Changeset 2340421
- Timestamp:
- 07/14/2020 02:41:42 PM (6 years ago)
- Location:
- doccheck-login/tags/1.0.7
- Files:
-
- 6 added
- 11 edited
- 1 copied
-
. (copied) (copied from doccheck-login/trunk)
-
README.txt (modified) (2 diffs)
-
admin/class-dcl-metaboxes.php (modified) (4 diffs)
-
admin/class-dcl-settings.php (modified) (11 diffs)
-
admin/css (added)
-
admin/css/chosen-sprite.png (added)
-
admin/css/[email protected] (added)
-
admin/css/chosen.min.css (added)
-
admin/js (added)
-
admin/js/chosen.jquery.min.js (added)
-
client/class-dcl-client.php (modified) (8 diffs)
-
dc-login.php (modified) (1 diff)
-
includes/class-dcl-activator.php (modified) (2 diffs)
-
includes/class-dcl-base.php (modified) (8 diffs)
-
includes/class-dcl.php (modified) (3 diffs)
-
languages/doccheck-login-de_DE.mo (modified) (previous)
-
languages/doccheck-login-de_DE.po (modified) (9 diffs)
-
languages/doccheck-login.pot (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
doccheck-login/tags/1.0.7/README.txt
r2239640 r2340421 4 4 Requires at least: 4.5 5 5 Tested up to: 5.2.3 6 Stable tag: 1.0. 66 Stable tag: 1.0.7 7 7 License: GPLv2 or later 8 8 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 50 50 51 51 == Changelog == 52 = 1.0.7 = 53 * Added profession routing and profession access management 54 * Tested up to 5.4.2 52 55 53 56 = 1.0.6 = -
doccheck-login/tags/1.0.7/admin/class-dcl-metaboxes.php
r2175555 r2340421 13 13 */ 14 14 class DCL_Metaboxes extends DCL_Admin { 15 16 17 /** 18 * Register the stylesheets for the public-facing side of the site. 19 * 20 * @since 1.0.0 21 */ 22 public function enqueue_styles() { 23 24 /** 25 * This function is provided for demonstration purposes only. 26 * 27 * An instance of this class should be passed to the run() function 28 * defined in Ga_Datalayer_Loader as all of the hooks are defined 29 * in that particular class. 30 * 31 * The Ga_Datalayer_Loader will then create the relationship 32 * between the defined hooks and the functions defined in this 33 * class. 34 */ 35 36 wp_enqueue_style( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'css/chosen.min.css', array(), $this->version, 'all' ); 37 38 } 39 40 /** 41 * Register the JavaScript for the public-facing side of the site. 42 * 43 * @since 1.0.0 44 */ 45 public function enqueue_scripts() { 46 47 /** 48 * This function is provided for demonstration purposes only. 49 * 50 * An instance of this class should be passed to the run() function 51 * defined in Ga_Datalayer_Loader as all of the hooks are defined 52 * in that particular class. 53 * 54 * The Ga_Datalayer_Loader will then create the relationship 55 * between the defined hooks and the functions defined in this 56 * class. 57 */ 58 59 wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/chosen.jquery.min.js', array( 'jquery' ), $this->version, false ); 60 61 } 15 62 16 63 /** … … 51 98 * @access public 52 99 */ 53 public function dcl_display_meta_box_restrict_access() { ?> 54 <label> 55 <input type="checkbox" 56 id="dcl_restrict_access" 57 name="dcl_restrict_access" 58 <?php checked( get_post_meta( get_the_ID(), 'dcl_restrict_access', true ), 'on', true ); ?> /> 59 <?php _e( 'Restrict access with login', 'doccheck-login' ); ?> 60 </label> 100 public function dcl_display_meta_box_restrict_access() { 101 global $post; 102 103 104 $select_box = $this->dcl_get_occupational_group(); 105 106 if ( get_option( 'dcl_general_profession_routing_active' ) ) { 107 108 if ( get_post_meta( get_the_ID(), 'dcl_group_routing', true ) == '' && get_post_meta( get_the_ID(), 'dcl_restrict_access', true ) == 'on' ) { 109 update_post_meta( get_the_ID(), 'dcl_all_group', 'on' ); 110 } 111 $access_restricted = get_post_meta( $post->ID, 'dcl_restrict_access', true ); 112 $dcl_all_group = get_post_meta( $post->ID, 'dcl_all_group', true ); 113 114 if ( ( ! $access_restricted || $dcl_all_group ) ) { 115 update_post_meta( get_the_ID(), 'dcl_group_routing', '' ); 116 } 117 } else { 118 update_post_meta( get_the_ID(), 'dcl_group_routing', '' ); 119 update_post_meta( get_the_ID(), 'dcl_all_group', '' ); 120 } 121 ?> 122 <div> 123 <label> 124 <input type="checkbox" 125 id="dcl_restrict_access" 126 class="<?php echo get_post_meta( $post->ID, 'dcl_all_group', true ) ?>" 127 name="dcl_restrict_access" 128 <?php checked( get_post_meta( get_the_ID(), 'dcl_restrict_access', true ), 'on', true ); ?> 129 onclick="toggleCheckboxes(this)"/> 130 <?php _e( 'Restrict access with login', 'doccheck-login' ); ?> 131 </label> 132 </div> 133 <?php if ( get_option( 'dcl_general_profession_routing_active' ) ) : ?> 134 <div style="margin-top: 10px; <?php echo ! $access_restricted ? ' display: none;' : '' ?>" 135 id="dcl_all_group_wrapper"> 136 <label> 137 <input type="checkbox" 138 id="dcl_all_group" 139 name="dcl_all_group" 140 <?php checked( get_post_meta( get_the_ID(), 'dcl_all_group', true ), 'on', true ); ?> 141 onclick="toggleSelectbox(this)"/> 142 <?php _e( 'All approved professions', 'doccheck-login' ); ?> 143 </label> 144 </div> 145 <div style="margin-top: 10px; margin-bottom: 20px;<?php echo ! $access_restricted || $dcl_all_group ? ' display: none;' : '' ?>" 146 id="dcl_group_routing_wrapper"> 147 <?php _e( 'Please select a profession', 'doccheck-login' ); ?> 148 149 <select name="dcl_group_routing[]" id="dcl_group_routing" 150 data-placeholder="<?php _e( 'Please select a profession', 'doccheck-login' ); ?>" 151 multiple class="chosen-select"> 152 <?php foreach ( $select_box as $option_key => $option_value ) : ?> 153 154 <option value="<?php echo $option_key ?>" <?php echo in_array( $option_key, get_post_meta( get_the_ID(), 'dcl_group_routing', true ) ) ? 'selected="selected"' : ''; ?>><?php 155 echo $option_value 156 ?></option> 157 <?php endforeach; ?> 158 </select> 159 <script> 160 jQuery(".chosen-select").chosen({width: "100%"}); 161 162 163 function toggleCheckboxes(elem) { 164 165 if (elem.checked === true) { 166 document.getElementById("dcl_all_group").checked = true; 167 document.getElementById('dcl_all_group_wrapper').style.display = 'block'; 168 } else { 169 document.getElementById("dcl_all_group").checked = false; 170 document.getElementById('dcl_all_group_wrapper').style.display = 'none'; 171 document.getElementById('dcl_group_routing_wrapper').style.display = 'none'; 172 } 173 174 } 175 176 function toggleSelectbox(elem) { 177 178 if (elem.checked === false) { 179 180 document.getElementById('dcl_group_routing_wrapper').style.display = 'block'; 181 182 } else { 183 document.getElementById('dcl_group_routing_wrapper').style.display = 'none'; 184 } 185 186 } 187 188 </script> 189 190 191 </div> 192 <?php wp_nonce_field( 'dcl_all_group', 'dcl_all_group_nonce' ); ?> 193 <?php wp_nonce_field( 'dcl_group_routing', 'dcl_group_routing_nonce' ); ?> 194 <?php endif; ?> 61 195 62 196 <?php wp_nonce_field( 'dcl_restrict_access', 'dcl_restrict_access_nonce' ); ?> … … 73 207 public function dcl_save_meta_boxes( $post_id ) { 74 208 $options = [ 75 'dcl_restrict_access' 209 'dcl_restrict_access', 210 'dcl_all_group', 211 'dcl_group_routing' 76 212 ]; 77 213 78 214 foreach ( $options as $option ) { 79 215 if ( $this->dcl_user_can_save( $post_id, $option . '_nonce', $option ) ) { 216 80 217 if ( isset( $_POST[ $option ] ) ) { 81 update_post_meta( $post_id, $option, $_POST[ $option ] ); 218 219 $post_option = $_POST[ $option ]; 220 221 update_post_meta( $post_id, $option, $post_option ); 82 222 } else { 83 223 delete_post_meta( $post_id, $option ); … … 106 246 return ! ( $is_autosave || $is_revision ) && $is_valid_nonce; 107 247 } 248 249 250 /** 251 * Request access token from oauth service. 252 * 253 * 254 * @return array|mixed|object 255 * @since 1.0.0 256 */ 257 private function dcl_get_occupational_group() { 258 259 $dcl_form_occupational_groups_en = [ 260 '' => 'Please choose a professional group', 261 '19' => 'Alternative / Non-medical practitioner', 262 '24' => 'Bio technican | Medical technican', 263 '17' => 'Biochemist', 264 '45' => 'Biological / Chemical / Physical technical assistant', 265 '14' => 'Biologist', 266 '100112' => 'Biomedical Scientist', 267 '100108' => 'Biomedical Scientist', 268 '1005' => 'Business/ Management/ Economy', 269 '15' => 'Chemist', 270 '73' => 'Children\'s nurse', 271 '69' => 'Chiropractic', 272 '100099' => 'Clinical trial assistant', 273 '59' => 'Company Password', 274 '66' => 'Dental assistant', 275 '99116' => 'Dental care profession (other)', 276 '100119' => 'Dental care profession (other)', 277 '70' => 'Dental hygienist', 278 '65' => 'Dental technician / Mechanic', 279 '4' => 'Dentist', 280 '67' => 'Diabetes Advisor', 281 '39' => 'Dietetic Assistant', 282 '5016' => 'Dietician', 283 '100238' => 'DocCheck Blogger', 284 '99999' => 'DocCheck Team', 285 '10' => 'Doctor\'s Receptionist/ Assistant', 286 '68' => 'Druggist (CH)', 287 '35' => 'Emergency medical technician [EMT]', 288 '34' => 'Emergency Paramedic', 289 '99998' => 'Employee DocCheck Shop', 290 '100113' => 'Epidemiologist', 291 '18' => 'Ergotherapist', 292 '11' => 'Geriatric nurse', 293 '3002' => 'Health economist', 294 '5007' => 'Health official', 295 '100040' => 'Hearing Care Professional', 296 '104' => 'Industry employee', 297 '38' => 'Insurance Company Employee', 298 '1003' => 'Intern pharmacist', 299 '5100' => 'Journalist', 300 '42' => 'Lawyer', 301 '13' => 'Librarian', 302 '36' => 'Management Consultant', 303 '30' => 'Medical advertising agency employee', 304 '100115' => 'Medical Assistant (other)', 305 '99110' => 'Medical Assistant (other)', 306 '46' => 'Medical dealer', 307 '41' => 'Medical documentalist', 308 '100098' => 'Medical educator', 309 '100109' => 'Medical Engineer', 310 '100114' => 'Medical Engineer', 311 '22' => 'Medical information scientist', 312 '23' => 'Medical journalist', 313 '28' => 'Medical laboratory assistant', 314 '2004' => 'Medical laboratory scientist (MLS)', 315 '5014' => 'Medical laboratory scientist radiology', 316 '5019' => 'Medical Photographer / Designer', 317 '16' => 'Medical physicist', 318 '20' => 'Midwife', 319 '9999' => 'Non-medical professions', 320 '21' => 'Nurse / Hospital nurse', 321 '75' => 'Nurse anesthetist', 322 '3010' => 'Nurse without degree', 323 '58' => 'Nursing and care management with diploma', 324 '2003' => 'Nursing Home Manager', 325 '99112' => 'Nursing profession (other)', 326 '100116' => 'Nursing profession (other)', 327 '5018' => 'Nursing scientist', 328 '100100' => 'Nursing teacher/ educationist', 329 '100097' => 'Nutrition consultant', 330 '53' => 'Optician / Orthoptist', 331 '72' => 'Orderly / Ward assistant / Nurse assistant', 332 '71' => 'Orthoptics', 333 '37' => 'Other medical professions', 334 '1008' => 'Other (non-medical profession)', 335 '10000' => 'Patient', 336 '2005' => 'Pharmaceutical Assistant', 337 '99113' => 'Pharmaceutical profession (other)', 338 '100096' => 'Pharmaceutical sales representative', 339 '26' => 'Pharmaceutical-Commercial employee', 340 '25' => 'Pharmaceutical-technical assistant', 341 '2' => 'Pharmacist', 342 '1002' => 'Pharmacist (employee)', 343 '27' => 'Pharmacy engineer', 344 '1001' => 'Pharmacy owner', 345 '12' => 'Pharmacy technician', 346 '1004' => 'Physical scientist', 347 '1' => 'Physician', 348 '100111' => 'Physician Assistant', 349 '100107' => 'Physician Assistant', 350 '33' => 'Physiotherapist', 351 '100101' => 'Physiotherapist for animals', 352 '3006' => 'Podiatrist', 353 '5013' => 'Psychiatric nurse / Mental health nurse', 354 '57' => 'Psychological technical assistant', 355 '31' => 'Psychologist', 356 '5020' => 'Psychomotoric therapist', 357 '32' => 'Psychotherapist', 358 '29' => 'Publishing Company Employee', 359 '3004' => 'Radiology assistant', 360 '1006' => 'Scholar', 361 '63' => 'Speech therapist', 362 '5' => 'Student', 363 '54' => 'Student of animal health', 364 '106' => 'Student of dentistry', 365 '105' => 'Student of human medicine', 366 '56' => 'Student of pharmacy', 367 '100073' => 'Student: Other study courses', 368 '76' => 'Surgical nurse', 369 '5021' => 'Surgical technician assistant', 370 '1007' => 'Technician', 371 '99114' => 'Therapist (other)', 372 '100117' => 'Therapist (other)', 373 '44' => 'Toxicologist', 374 '3' => 'Veterinary', 375 '5010' => 'Veterinary healer', 376 '100118' => 'Veterinary profession (other)', 377 '99115' => 'Veterinary profession (other)', 378 '5017' => 'Veterinary\'s assistant' 379 ]; 380 381 382 $dcl_form_occupational_groups_de = [ 383 '' => 'Bitte wählen Sie eine Berufsgruppe', 384 '11' => 'Altenpfleger/in', 385 '75' => 'Anästhesiepfleger/in', 386 '1002' => 'Angestellte/r Apotheker/in', 387 '42' => 'Anwalt', 388 '12' => 'Apothekenhelfer/in', 389 '2' => 'Apotheker/in', 390 '1' => 'Arzt | Ärztin', 391 '100107' => 'Arztassistent/in', 392 '100111' => 'Arztassistent/in (Physician Assistant)', 393 '53' => 'Augenoptiker/in | Orthoptist/in', 394 '5007' => 'Beamter im Gesundheitswesen', 395 '13' => 'Bibliothekar', 396 '17' => 'Biochemiker/in | Pharmakologe/in | Toxikologe/in', 397 '14' => 'Biologe', 398 '1004' => 'Biologe/in | Chemiker/in | Naturwissenschaftler/in', 399 '2004' => 'Biologie-Laborant/in | Chemie-Laborant/in', 400 '45' => 'Biologisch- | Chemisch- | Physikalisch-technische/r Assistent/in', 401 '100112' => 'Biomediziner/in', 402 '100108' => 'Biomediziner/in', 403 '24' => 'Biotechniker/in | Medizintechniker/in', 404 '15' => 'Chemiker', 405 '69' => 'Chiropraktiker/in | Osteopath/in', 406 '70' => 'Dentalhygieniker', 407 '67' => 'Diabetesberater/in', 408 '39' => 'Diätassistent/in', 409 '100238' => 'DocCheck Blogger', 410 '99998' => 'DocCheck Shop Team', 411 '99999' => 'DocCheck Team', 412 '68' => 'Drogist/in (CH)', 413 '100113' => 'Epidemiologe/in', 414 '18' => 'Ergotherapeut/in', 415 '100097' => 'Ernährungsberater/in', 416 '5016' => 'Ernährungswissenschaftler/in | Ökotrophologe/in', 417 '59' => 'Firmenpasswort', 418 '1006' => 'Geisteswissenschaftler/in', 419 '73' => 'Gesundheits- und Kinderkrankenpfleger/in', 420 '21' => 'Gesundheits- und Krankenpfleger/in', 421 '3002' => 'Gesundheitsökonom/in | Gesundheitsmanager/in | Gesundheitswissenschaftler/in', 422 '20' => 'Hebamme | Entbindungspfleger', 423 '19' => 'Heilpraktiker/in', 424 '100040' => 'Hörakustiker/in', 425 '5100' => 'Journalist', 426 '100099' => 'Klinischer Monitor | Mitarbeiter/in klinische Studien', 427 '72' => 'Krankenpflegehelfer', 428 '3010' => 'Krankenpfleger ohne Abschluss', 429 '5013' => 'Krankenpfleger/in Psychiatrie', 430 '63' => 'Logopäde/in | Sprachtherapeut/in', 431 '5019' => 'Medizinfotograf/in | Designer/in', 432 '22' => 'Medizininformatiker/in', 433 '100114' => 'Mediziningenieur/in', 434 '100109' => 'Mediziningenieur/in', 435 '99110' => 'Medizinische(r) Assistent/in (sonstige)', 436 '100115' => 'Medizinische/r Assistent/in (sonstige)', 437 '41' => 'Medizinische/r Dokumentar/in', 438 '10' => 'Medizinische/r Fachangestellte/r', 439 '46' => 'Medizinische/r Fachhändler/in (Arzneimittel)', 440 '28' => 'Medizinisch-technische/r Assistent/in', 441 '5014' => 'Medizinisch-technischer Radiologieassistent', 442 '23' => 'Medizinjournalist/in', 443 '100098' => 'Medizinpädagoge/in', 444 '16' => 'Medizinphysiker/in', 445 '104' => 'Mitarbeiter/in Industrie | Agentur', 446 '29' => 'Mitarbeiter/in medizinische Verlage', 447 '30' => 'Mitarbeiter/in Pharmaagentur', 448 '38' => 'Mitarbeiter/in Versicherung', 449 '5020' => 'Motopäde/in | Mototherapeut/in', 450 '9999' => 'Nichtmedizinischer Beruf', 451 '34' => 'Notfallsanitäter/in', 452 '5021' => 'Operationstechnische/r Assistent/in | Chirurgische/r Assistent/in', 453 '76' => 'OP-Pfleger/in', 454 '71' => 'Orthoptist', 455 '10000' => 'Patient', 456 '100116' => 'Pflegeberuf (sonstige)', 457 '99112' => 'Pflegeberuf (sonstige)', 458 '2003' => 'Pflegedienstleiter/in | Pflegeheimleiter/in', 459 '5018' => 'Pflegemanager/in | Pflegewissenschaftler/in', 460 '100100' => 'Pflegepädagoge', 461 '58' => 'Pflegewirt/in', 462 '2005' => 'Pharmaassistent/in', 463 '100096' => 'Pharmaberater/in | Pharmareferent/in', 464 '1003' => 'Pharmazeut/in | Pharmazie-Praktikant/in', 465 '26' => 'Pharmazeutisch-kaufmännische/r Angestellte/r (PKA)', 466 '25' => 'Pharmazeutisch-technische/r Assistent/in (PTA)', 467 '40' => 'Pharmazieberuf (sonstige)', 468 '99113' => 'Pharmazieberuf (sonstige)', 469 '27' => 'Pharmazieingenieur/in', 470 '33' => 'Physiotherapeut/in', 471 '3006' => 'Podologe/in | Medizinische/r Fußpfleger/in', 472 '3007' => 'Profession d\'appareillage', 473 '31' => 'Psychologe/in', 474 '57' => 'Psychologische/r Assistent/in | Psychologische/r Berater/in', 475 '32' => 'Psychotherapeut/in', 476 '3004' => 'Radiologieassistent', 477 '35' => 'Rettungssanitäter/in', 478 '1001' => 'Selbstst. Apotheker/in', 479 '1008' => 'Sonstige (nichtmedizinischer Beruf)', 480 '5' => 'Student/in', 481 '100073' => 'Student/in (andere Fächer)', 482 '105' => 'Student/in der Humanmedizin', 483 '56' => 'Student/in der Pharmazie', 484 '54' => 'Student/in der Tiermedizin', 485 '106' => 'Student/in der Zahnmedizin', 486 '1007' => 'Techniker/in, IT', 487 '99114' => 'Therapeut (sonstige)', 488 '100117' => 'Therapeutischer Beruf (sonstige)', 489 '3' => 'Tierarzt | Tierärztin', 490 '5010' => 'Tierheilpraktiker/in', 491 '100118' => 'Tiermedizinischer Beruf (sonstige)', 492 '99115' => 'Tiermedizinischer Beruf (sonstige)', 493 '5017' => 'Tiermedizinische/r Fachangestellte/r', 494 '100101' => 'Tierphysiotherapeut/in', 495 '44' => 'Toxikologe', 496 '36' => 'Unternehmensberater/in', 497 '37' => 'Weitere medizinische Berufe', 498 '1005' => 'Wirtschaftswissenschaftler/in', 499 '4' => 'Zahnarzt | Zahnärztin', 500 '100119' => 'Zahnmedizinischer Beruf (sonstige)', 501 '99116' => 'Zahnmedizinischer Beruf (sonstige)', 502 '66' => 'Zahnmedizinische/r Fachangestellte/r | Dentalhygieniker/in', 503 '65' => 'Zahn' 504 ]; 505 506 if ( get_locale() === 'de_DE' ) { 507 $array = $dcl_form_occupational_groups_de; 508 } else { 509 $array = $dcl_form_occupational_groups_en; 510 } 511 512 return $array; 513 } 108 514 } 515 -
doccheck-login/tags/1.0.7/admin/class-dcl-settings.php
r2239640 r2340421 34 34 var $dcl_support_client_secret_email = '[email protected]'; 35 35 36 36 37 /** 37 38 * Register settings page. … … 67 68 68 69 ?></form> 70 71 <script> 72 73 function getCookie(cname) { 74 var name = cname + "="; 75 var decodedCookie = decodeURIComponent(document.cookie); 76 var ca = decodedCookie.split(';'); 77 for (var i = 0; i < ca.length; i++) { 78 var c = ca[i]; 79 while (c.charAt(0) == ' ') { 80 c = c.substring(1); 81 } 82 if (c.indexOf(name) == 0) { 83 return c.substring(name.length, c.length); 84 } 85 } 86 return ""; 87 } 88 89 document.getElementById('dcl_general_profession_routing_active').addEventListener('change', function () { 90 // Setup siblings array 91 var siblings = []; 92 93 if (this.value === 1) { 94 this.value = 0; 95 } else { 96 this.value = 1; 97 } 98 99 elem = this.parentNode.parentNode.parentNode.nextElementSibling; 100 101 // As long as a sibling exists 102 while (elem) { 103 siblings.push(elem); 104 elem = elem.nextElementSibling; 105 106 } 107 108 siblings[0].style.display = 'none'; 109 110 for (var i = 1; i < siblings.length - 1; i++) { 111 if (this.checked == true) { 112 113 if (siblings[i].className !== "ap-dc-none") { 114 siblings[i].style.display = 'table-row'; 115 116 routine_first_jobs = document.getElementById("dcl_general_jobs"); 117 //routine_first_jobs.parentNode.parentNode.parentNode.style.display = 'table-cell'; 118 document.getElementById("add").parentNode.parentNode.style.display = 'table-cell'; 119 } 120 } else { 121 siblings[i].style.display = 'none'; 122 } 123 124 } 125 126 }); 127 128 </script> 129 130 <script> 131 132 window.onload = function (e) { 133 current_val = 0 134 135 current_val = document.getElementById("dcl_general_add_profession_routing").value; 136 137 document.cookie = "currentNum = " + current_val; 138 document.cookie = "repeaterNum = 0"; 139 value = current_val; 140 ap_dclogin_pages = document.querySelectorAll(".ap-dclogin--pages"); 141 document.getElementById("dcl_general_add_profession_routing").parentNode.parentNode.style.display = 'none'; 142 143 for (var i = 0; i < ap_dclogin_pages.length; i++) { 144 ap_dclogin_pages[i].parentNode.parentNode.style.display = 'none'; 145 ap_dclogin_pages[i].parentNode.parentNode.className = 'ap-dc-none'; 146 } 147 148 <?php if(! get_option( 'dcl_general_profession_routing_active' )) { ?> 149 routine_first_jobs = document.getElementById("dcl_general_jobs"); 150 routine_first_jobs.parentNode.parentNode.parentNode.style.display = 'none'; 151 document.getElementById("dcl_general_add_profession_routing").parentNode.parentNode.style.display = 'none'; 152 document.getElementById("add").parentNode.parentNode.style.display = 'none'; 153 154 <?php } ?> 155 } 156 157 158 </script> 159 160 69 161 </div> 70 162 <?php } … … 114 206 } 115 207 208 209 public function test_0_callback() { 210 printf( 211 '<input class="regular-text" type="text" name="dclogin_option_name[test_0]" id="test_0" value="%s">', 212 isset( $this->dclogin_options['test_0'] ) ? esc_attr( $this->dclogin_options['test_0'] ) : '' 213 ); 214 } 215 216 116 217 /** 117 218 * Register settings. … … 124 225 $settings_section_general = $this->plugin_name . '-general-settings'; 125 226 $settings_section_form = $this->plugin_name . '-form-settings'; 227 $setting_number_current = get_option( 'dcl_general_add_profession_routing' ); 228 $setting_number_jobs = $_COOKIE['repeaterNum']; 126 229 127 230 // Sections … … 139 242 $settings_page 140 243 ); 244 $group_array_job = []; 245 $group_array_page = []; 246 $group_array_job_current = []; 247 $group_array_page_current = []; 248 249 if ( $setting_number_current !== 0 && get_option( 'dcl_general_profession_routing_active' ) ) { 250 for ( $y = 0; $y < $setting_number_current; $y ++ ) { 251 252 if ( get_option( 'dcl_general_jobs' . $y ) != '' && get_option( 'dcl_general_jobs' . $y ) != null ) { 253 254 255 $group_array_job_current[ $y ] = array( 256 'name' => 'dcl_general_jobs' . $y, 257 'title' => __( '', 'doccheck-login' ), 258 'section' => $settings_section_general, 259 'type' => 'repeater', 260 'atts' => [ 261 'option_name_job' => 'dcl_general_jobs' . $y, 262 'select_options_job' => $this->dcl_get_form_occupational(), 263 'option_name_page' => 'dcl_general_pages' . $y, 264 'select_options_page' => $this->dcl_get_pages_for_select(), 265 'type' => 'job' 266 ] 267 ); 268 269 270 $group_array_page_current[ $y ] = array( 271 'name' => 'dcl_general_pages' . $y, 272 'title' => __( '', 'doccheck-login' ), 273 'section' => $settings_section_general, 274 'type' => 'repeater', 275 'atts' => [ 276 'option_name_job' => 'dcl_general_jobs' . $y, 277 'select_options_job' => $this->dcl_get_form_occupational(), 278 'option_name_page' => 'dcl_general_pages' . $y, 279 'select_options_page' => $this->dcl_get_pages_for_select(), 280 'type' => 'page' 281 ] 282 283 ); 284 } 285 } 286 287 } 288 if ( $setting_number_jobs !== 0 ) { 289 for ( $i = $setting_number_current; $i < $setting_number_jobs; $i ++ ) { 290 $group_array_job[ $i ] = array( 291 'name' => 'dcl_general_jobs' . $i, 292 'title' => __( '', 'doccheck-login' ), 293 'section' => $settings_section_general, 294 'type' => 'repeater', 295 'atts' => [ 296 'option_name_job' => 'dcl_general_jobs' . $i, 297 'select_options_job' => $this->dcl_get_form_occupational(), 298 'option_name_page' => 'dcl_general_pages' . $i, 299 'select_options_page' => $this->dcl_get_pages_for_select(), 300 'type' => 'job' 301 ] 302 ); 303 304 305 $group_array_page[ $i ] = array( 306 'name' => 'dcl_general_pages' . $i, 307 'title' => __( '', 'doccheck-login' ), 308 'section' => $settings_section_general, 309 'type' => 'repeater', 310 'atts' => [ 311 'option_name_job' => 'dcl_general_jobs' . $i, 312 'select_options_job' => $this->dcl_get_form_occupational(), 313 'option_name_page' => 'dcl_general_pages' . $i, 314 'select_options_page' => $this->dcl_get_pages_for_select(), 315 'type' => 'page' 316 ] 317 318 ); 319 320 } 321 } 322 141 323 142 324 // Fields 143 $settings = [325 $settings1 = [ 144 326 // Section general 145 327 [ … … 187 369 ] 188 370 ], 371 372 373 [ 374 'name' => 'dcl_general_profession_routing_active', 375 'title' => __( 'Profession routing', 'doccheck-login' ), 376 'section' => $settings_section_general, 377 'type' => 'checkbox', 378 'atts' => [ 379 'label' => __( 'activated', 'doccheck-login' ), 380 ] 381 ], 382 383 [ 384 'name' => 'dcl_general_add_profession_routing', 385 'title' => __( 'Add profession routing', 'doccheck-login' ), 386 'section' => $settings_section_general, 387 'type' => 'repeater', 388 'atts' => [ 389 'option_name_job' => 'dcl_general_jobs', 390 'select_options' => $this->dcl_get_form_occupational(), 391 'option_name_page' => 'dcl_general_pages', 392 'select_options_page' => $this->dcl_get_pages_for_select(), 393 'type' => 'add' 394 395 ] 396 ], 397 398 [ 399 'name' => 'dcl_general_jobs', 400 'title' => __( '', 'doccheck-login' ), 401 'section' => $settings_section_general, 402 'type' => 'repeater', 403 'atts' => [ 404 'option_name_job' => 'dcl_general_jobs', 405 'select_options_job' => $this->dcl_get_form_occupational(), 406 'option_name_page' => 'dcl_general_pages', 407 'select_options_page' => $this->dcl_get_pages_for_select(), 408 'type' => 'job' 409 ] 410 411 ], 412 [ 413 'name' => 'dcl_general_pages', 414 'title' => __( '', 'doccheck-login' ), 415 'section' => $settings_section_general, 416 'type' => 'repeater', 417 'atts' => [ 418 'option_name_job' => 'dcl_general_jobs', 419 'select_options_job' => $this->dcl_get_form_occupational(), 420 'option_name_page' => 'dcl_general_pages', 421 'select_options_page' => $this->dcl_get_pages_for_select(), 422 'type' => 'page' 423 ] 424 ] 425 426 427 ]; 428 429 $settings = [ 430 431 [ 432 'name' => 'dcl_general_redirect_page_id', 433 'title' => __( '\'Profession group restricted\' redirect page', 'doccheck-login' ), 434 'section' => $settings_section_general, 435 'type' => 'select', 436 'atts' => [ 437 'select_options' => $this->dcl_get_pages_for_select(), 438 'default' => $this->dcl_page_redirect_id, 439 ] 440 ], 441 189 442 [ 190 443 'name' => 'dcl_general_hide_menu_items', … … 196 449 ] 197 450 ], 451 198 452 // Section form 199 453 [ … … 217 471 [ 218 472 'name' => 'dcl_general_set_language_by_wpml', 219 'title' => __( ' Sprache (WPML)', 'doccheck-login' ),473 'title' => __( 'Language (WPML)', 'doccheck-login' ), 220 474 'section' => $settings_section_form, 221 475 'type' => 'checkbox', … … 243 497 ], 244 498 ]; 499 500 $settings = array_merge( $settings1, $group_array_job_current, $group_array_page_current, $group_array_job, $group_array_page, $settings ); 501 245 502 246 503 // Add and register settings … … 373 630 </label> 374 631 632 633 <?php if ( $description ) : ?> 634 <p class="description"><?php echo $description; ?></p> 635 <?php endif; ?> 636 <?php } 637 638 /** 639 * Render select field. 640 * 641 * @param $atts 642 * 643 * @since 1.0.7 644 * @access public 645 */ 646 public function dcl_render_repeater_field( $atts ) { 647 // Set attributes 648 $option_name_job = $atts['option_name_job']; 649 $option_name_add = $atts['option_name']; 650 $option_name_page = $atts['option_name_page']; 651 $option_type = isset( $atts['type'] ) ? $atts['type'] : []; 652 653 $select_options_job = isset( $atts['select_options_job'] ) ? $atts['select_options_job'] : []; 654 $select_options_page = isset( $atts['select_options_page'] ) ? $atts['select_options_page'] : []; 655 $default = isset( $atts['default'] ) ? $atts['default'] : false; 656 $description = isset( $atts['description'] ) ? $atts['description'] : false; 657 658 // Get option value 659 $value_job = get_option( $option_name_job, $default ); 660 $value_page = get_option( $option_name_page, $default ); 661 $value_add = get_option( $option_name_add, $default ); 662 // Get option value ?> 663 664 665 <?php if ( $option_type === 'add' ) { ?> 666 667 <input type="number" hidden 668 value="<?php echo get_option( 'dcl_general_profession_routing_active' ) ? esc_attr( $value_add ) : 0 ?>" 669 name="<?php echo $option_name_add ?>" 670 id="<?php echo $option_name_add ?>"/> 671 672 <?php } elseif ( $option_type === 'job' ) { ?> 673 674 <div style="display: flex; align-items: center;"> 675 <select name="<?php echo $option_name_job ?>" id="<?php echo $option_name_job ?>"> 676 <?php foreach ( $select_options_job as $option_key => $option_value ) : ?> 677 <option value="<?php echo $option_key ?>" <?php selected( $value_job, $option_key ); ?>><?php 678 echo $option_value 679 ?></option> 680 <?php endforeach; ?> 681 </select> 682 683 684 <select name="<?php echo $option_name_page ?>" id="<?php echo $option_name_page ?>"> 685 <?php foreach ( $select_options_page as $option_key => $option_value ) : ?> 686 <option value="<?php echo $option_key ?>" <?php selected( $value_page, $option_key ); ?>><?php 687 echo $option_value 688 ?></option> 689 <?php endforeach; ?> 690 </select> 691 <?php if ( $option_name_job == "dcl_general_jobs" ) { ?> 692 <button type="button" id="add" onclick="incrementValue()" 693 style="background-color: #0073aa;border: 0;padding: 0 13px;color: white; 694 font-size: 26px;height: 40px;line-height: 35px; cursor: pointer; margin-left: 10px;"> 695 + 696 </button> 697 698 699 <?php } ?> 700 <?php if ( $option_name_job != "dcl_general_jobs" ) { ?> 701 <div class="ap-dc-delete" onclick="remove_routing(this);" 702 style="cursor:pointer; margin-left: 10px; color:red;"> 703 704 löschen? 705 </div> 706 <?php } ?> 707 </div> 708 709 <script> 710 711 712 function remove_routing(element) { 713 714 result = [], 715 node = element.parentNode.firstChild; 716 717 while (node) { 718 if (node !== element && node.nodeType === Node.ELEMENT_NODE) { 719 720 721 result.push(node); 722 723 } 724 725 node = node.nextElementSibling || node.nextSibling; 726 727 } 728 729 result[0].selectedIndex = 0; 730 result[1].selectedIndex = 0; 731 732 element.parentNode.parentNode.parentNode.style.display = 'none'; 733 734 } 735 736 function remove_dynamic_routing(element) { 737 738 result = [], 739 node = element.parentNode.firstChild; 740 741 while (node) { 742 if (node !== element && node.nodeType === Node.ELEMENT_NODE) { 743 744 745 result.push(node); 746 747 } 748 749 node = node.nextElementSibling || node.nextSibling; 750 751 } 752 753 result[0].selectedIndex = 0; 754 result[1].selectedIndex = 0; 755 756 element.parentNode.parentNode.parentNode.style.display = 'none'; 757 $repeaternumber = getCookie("repeaterNum"); 758 $repeaternumber = +$repeaternumber - 1; 759 760 document.cookie = "repeaterNum = " + +$repeaternumber; 761 762 value--; 763 } 764 765 766 function incrementValue() { 767 768 value++; 769 770 document.getElementById("dcl_general_add_profession_routing").value = value; 771 772 document.cookie = "repeaterNum = " + value; 773 diff = (+value - 1); 774 775 776 var append = "<th scope=\"row\"></th> <td><div class=\"append_select\" id=\"append_select\" style=\"display: flex; align-items: center;\">\n" + 777 "<select name='dcl_general_jobs" + (diff) + "' id='dcl_general_jobs" + (diff) + "'>\n" + 778 "<?php foreach ( $select_options_job as $option_key => $option_value ) : ?>" + 779 "<option value='<?php echo $option_key ?>' >" + 780 "<?php echo $option_value?>" + 781 "</option>\n" + 782 "<?php endforeach; ?>\n" + 783 "</select>\n" + 784 "\n" + 785 "\n" + 786 "<select name='dcl_general_pages" + diff + "' id='dcl_general_pages" + diff + "'>\n" + 787 "<?php foreach ( $select_options_page as $option_key => $option_value ) : ?>" + 788 "<option value='<?php echo $option_key ?>' >" + 789 "<?php echo $option_value?>" + 790 "</option>\n" + 791 "<?php endforeach; ?>\n" + 792 "</select>" + 793 "<div class=\"ap-dc-delete\" onclick=\"remove_dynamic_routing(this);\"\n" + 794 " style=\"cursor:pointer; margin-left: 10px; color:red;\">\n" + 795 "\n" + 796 " löschen?\n" + 797 " </div>" 798 "</div></td>"; 799 800 ap_dclogin_pages = document.querySelectorAll(".ap-dc-none"); 801 var el = document.createElement("tr"); 802 el.innerHTML = append; 803 ap_dclogin_pages[ap_dclogin_pages.length - 1].parentNode.insertBefore(el, ap_dclogin_pages[ap_dclogin_pages.length - 1].nextSibling); 804 805 806 } 807 808 809 </script> 810 811 812 <?php } elseif ( $option_type === 'page' ) { ?> 813 <div class="ap-dclogin--pages" style="display: none"></div> 814 <?php } ?> 815 816 375 817 <?php if ( $description ) : ?> 376 818 <p class="description"><?php echo $description; ?></p> … … 404 846 return $options; 405 847 } 848 849 /** 850 * Get pages for select. 851 * 852 * @return array $options With available pages. 853 * @since 1.0.7 854 * @access public 855 */ 856 857 private function dcl_get_form_occupational() { 858 859 $dcl_form_occupational_groups = $this->dcl_get_occupational_group(); 860 861 return $dcl_form_occupational_groups; 862 } 863 864 865 /** 866 * get profession grousp list. 867 * 868 * 869 * @return array|mixed|object 870 * @since 1.0.7 871 */ 872 private function dcl_get_occupational_group() { 873 874 875 $dcl_form_occupational_groups_en = [ 876 '' => 'Please choose a professional group', 877 '19' => 'Alternative / Non-medical practitioner', 878 '24' => 'Bio technican | Medical technican', 879 '17' => 'Biochemist', 880 '45' => 'Biological / Chemical / Physical technical assistant', 881 '14' => 'Biologist', 882 '100112' => 'Biomedical Scientist', 883 '100108' => 'Biomedical Scientist', 884 '1005' => 'Business/ Management/ Economy', 885 '15' => 'Chemist', 886 '73' => 'Children\'s nurse', 887 '69' => 'Chiropractic', 888 '100099' => 'Clinical trial assistant', 889 '59' => 'Company Password', 890 '66' => 'Dental assistant', 891 '99116' => 'Dental care profession (other)', 892 '100119' => 'Dental care profession (other)', 893 '70' => 'Dental hygienist', 894 '65' => 'Dental technician / Mechanic', 895 '4' => 'Dentist', 896 '67' => 'Diabetes Advisor', 897 '39' => 'Dietetic Assistant', 898 '5016' => 'Dietician', 899 '100238' => 'DocCheck Blogger', 900 '99999' => 'DocCheck Team', 901 '10' => 'Doctor\'s Receptionist/ Assistant', 902 '68' => 'Druggist (CH)', 903 '35' => 'Emergency medical technician [EMT]', 904 '34' => 'Emergency Paramedic', 905 '99998' => 'Employee DocCheck Shop', 906 '100113' => 'Epidemiologist', 907 '18' => 'Ergotherapist', 908 '11' => 'Geriatric nurse', 909 '3002' => 'Health economist', 910 '5007' => 'Health official', 911 '100040' => 'Hearing Care Professional', 912 '104' => 'Industry employee', 913 '38' => 'Insurance Company Employee', 914 '1003' => 'Intern pharmacist', 915 '5100' => 'Journalist', 916 '42' => 'Lawyer', 917 '13' => 'Librarian', 918 '36' => 'Management Consultant', 919 '30' => 'Medical advertising agency employee', 920 '100115' => 'Medical Assistant (other)', 921 '99110' => 'Medical Assistant (other)', 922 '46' => 'Medical dealer', 923 '41' => 'Medical documentalist', 924 '100098' => 'Medical educator', 925 '100109' => 'Medical Engineer', 926 '100114' => 'Medical Engineer', 927 '22' => 'Medical information scientist', 928 '23' => 'Medical journalist', 929 '28' => 'Medical laboratory assistant', 930 '2004' => 'Medical laboratory scientist (MLS)', 931 '5014' => 'Medical laboratory scientist radiology', 932 '5019' => 'Medical Photographer / Designer', 933 '16' => 'Medical physicist', 934 '20' => 'Midwife', 935 '9999' => 'Non-medical professions', 936 '21' => 'Nurse / Hospital nurse', 937 '75' => 'Nurse anesthetist', 938 '3010' => 'Nurse without degree', 939 '58' => 'Nursing and care management with diploma', 940 '2003' => 'Nursing Home Manager', 941 '99112' => 'Nursing profession (other)', 942 '100116' => 'Nursing profession (other)', 943 '5018' => 'Nursing scientist', 944 '100100' => 'Nursing teacher/ educationist', 945 '100097' => 'Nutrition consultant', 946 '53' => 'Optician / Orthoptist', 947 '72' => 'Orderly / Ward assistant / Nurse assistant', 948 '71' => 'Orthoptics', 949 '37' => 'Other medical professions', 950 '1008' => 'Other (non-medical profession)', 951 '10000' => 'Patient', 952 '2005' => 'Pharmaceutical Assistant', 953 '99113' => 'Pharmaceutical profession (other)', 954 '100096' => 'Pharmaceutical sales representative', 955 '26' => 'Pharmaceutical-Commercial employee', 956 '25' => 'Pharmaceutical-technical assistant', 957 '2' => 'Pharmacist', 958 '1002' => 'Pharmacist (employee)', 959 '27' => 'Pharmacy engineer', 960 '1001' => 'Pharmacy owner', 961 '12' => 'Pharmacy technician', 962 '1004' => 'Physical scientist', 963 '1' => 'Physician', 964 '100111' => 'Physician Assistant', 965 '100107' => 'Physician Assistant', 966 '33' => 'Physiotherapist', 967 '100101' => 'Physiotherapist for animals', 968 '3006' => 'Podiatrist', 969 '5013' => 'Psychiatric nurse / Mental health nurse', 970 '57' => 'Psychological technical assistant', 971 '31' => 'Psychologist', 972 '5020' => 'Psychomotoric therapist', 973 '32' => 'Psychotherapist', 974 '29' => 'Publishing Company Employee', 975 '3004' => 'Radiology assistant', 976 '1006' => 'Scholar', 977 '63' => 'Speech therapist', 978 '5' => 'Student', 979 '54' => 'Student of animal health', 980 '106' => 'Student of dentistry', 981 '105' => 'Student of human medicine', 982 '56' => 'Student of pharmacy', 983 '100073' => 'Student: Other study courses', 984 '76' => 'Surgical nurse', 985 '5021' => 'Surgical technician assistant', 986 '1007' => 'Technician', 987 '99114' => 'Therapist (other)', 988 '100117' => 'Therapist (other)', 989 '44' => 'Toxicologist', 990 '3' => 'Veterinary', 991 '5010' => 'Veterinary healer', 992 '100118' => 'Veterinary profession (other)', 993 '99115' => 'Veterinary profession (other)', 994 '5017' => 'Veterinary\'s assistant' 995 ]; 996 997 998 $dcl_form_occupational_groups_de = [ 999 '' => 'Bitte wählen Sie eine Berufsgruppe', 1000 '11' => 'Altenpfleger/in', 1001 '75' => 'Anästhesiepfleger/in', 1002 '1002' => 'Angestellte/r Apotheker/in', 1003 '42' => 'Anwalt', 1004 '12' => 'Apothekenhelfer/in', 1005 '2' => 'Apotheker/in', 1006 '1' => 'Arzt | Ärztin', 1007 '100107' => 'Arztassistent/in', 1008 '100111' => 'Arztassistent/in (Physician Assistant)', 1009 '53' => 'Augenoptiker/in | Orthoptist/in', 1010 '5007' => 'Beamter im Gesundheitswesen', 1011 '13' => 'Bibliothekar', 1012 '17' => 'Biochemiker/in | Pharmakologe/in | Toxikologe/in', 1013 '14' => 'Biologe', 1014 '1004' => 'Biologe/in | Chemiker/in | Naturwissenschaftler/in', 1015 '2004' => 'Biologie-Laborant/in | Chemie-Laborant/in', 1016 '45' => 'Biologisch- | Chemisch- | Physikalisch-technische/r Assistent/in', 1017 '100112' => 'Biomediziner/in', 1018 '100108' => 'Biomediziner/in', 1019 '24' => 'Biotechniker/in | Medizintechniker/in', 1020 '15' => 'Chemiker', 1021 '69' => 'Chiropraktiker/in | Osteopath/in', 1022 '70' => 'Dentalhygieniker', 1023 '67' => 'Diabetesberater/in', 1024 '39' => 'Diätassistent/in', 1025 '100238' => 'DocCheck Blogger', 1026 '99998' => 'DocCheck Shop Team', 1027 '99999' => 'DocCheck Team', 1028 '68' => 'Drogist/in (CH)', 1029 '100113' => 'Epidemiologe/in', 1030 '18' => 'Ergotherapeut/in', 1031 '100097' => 'Ernährungsberater/in', 1032 '5016' => 'Ernährungswissenschaftler/in | Ökotrophologe/in', 1033 '59' => 'Firmenpasswort', 1034 '1006' => 'Geisteswissenschaftler/in', 1035 '73' => 'Gesundheits- und Kinderkrankenpfleger/in', 1036 '21' => 'Gesundheits- und Krankenpfleger/in', 1037 '3002' => 'Gesundheitsökonom/in | Gesundheitsmanager/in | Gesundheitswissenschaftler/in', 1038 '20' => 'Hebamme | Entbindungspfleger', 1039 '19' => 'Heilpraktiker/in', 1040 '100040' => 'Hörakustiker/in', 1041 '5100' => 'Journalist', 1042 '100099' => 'Klinischer Monitor | Mitarbeiter/in klinische Studien', 1043 '72' => 'Krankenpflegehelfer', 1044 '3010' => 'Krankenpfleger ohne Abschluss', 1045 '5013' => 'Krankenpfleger/in Psychiatrie', 1046 '63' => 'Logopäde/in | Sprachtherapeut/in', 1047 '5019' => 'Medizinfotograf/in | Designer/in', 1048 '22' => 'Medizininformatiker/in', 1049 '100114' => 'Mediziningenieur/in', 1050 '100109' => 'Mediziningenieur/in', 1051 '99110' => 'Medizinische(r) Assistent/in (sonstige)', 1052 '100115' => 'Medizinische/r Assistent/in (sonstige)', 1053 '41' => 'Medizinische/r Dokumentar/in', 1054 '10' => 'Medizinische/r Fachangestellte/r', 1055 '46' => 'Medizinische/r Fachhändler/in (Arzneimittel)', 1056 '28' => 'Medizinisch-technische/r Assistent/in', 1057 '5014' => 'Medizinisch-technischer Radiologieassistent', 1058 '23' => 'Medizinjournalist/in', 1059 '100098' => 'Medizinpädagoge/in', 1060 '16' => 'Medizinphysiker/in', 1061 '104' => 'Mitarbeiter/in Industrie | Agentur', 1062 '29' => 'Mitarbeiter/in medizinische Verlage', 1063 '30' => 'Mitarbeiter/in Pharmaagentur', 1064 '38' => 'Mitarbeiter/in Versicherung', 1065 '5020' => 'Motopäde/in | Mototherapeut/in', 1066 '9999' => 'Nichtmedizinischer Beruf', 1067 '34' => 'Notfallsanitäter/in', 1068 '5021' => 'Operationstechnische/r Assistent/in | Chirurgische/r Assistent/in', 1069 '76' => 'OP-Pfleger/in', 1070 '71' => 'Orthoptist', 1071 '10000' => 'Patient', 1072 '100116' => 'Pflegeberuf (sonstige)', 1073 '99112' => 'Pflegeberuf (sonstige)', 1074 '2003' => 'Pflegedienstleiter/in | Pflegeheimleiter/in', 1075 '5018' => 'Pflegemanager/in | Pflegewissenschaftler/in', 1076 '100100' => 'Pflegepädagoge', 1077 '58' => 'Pflegewirt/in', 1078 '2005' => 'Pharmaassistent/in', 1079 '100096' => 'Pharmaberater/in | Pharmareferent/in', 1080 '1003' => 'Pharmazeut/in | Pharmazie-Praktikant/in', 1081 '26' => 'Pharmazeutisch-kaufmännische/r Angestellte/r (PKA)', 1082 '25' => 'Pharmazeutisch-technische/r Assistent/in (PTA)', 1083 '40' => 'Pharmazieberuf (sonstige)', 1084 '99113' => 'Pharmazieberuf (sonstige)', 1085 '27' => 'Pharmazieingenieur/in', 1086 '33' => 'Physiotherapeut/in', 1087 '3006' => 'Podologe/in | Medizinische/r Fußpfleger/in', 1088 '3007' => 'Profession d\'appareillage', 1089 '31' => 'Psychologe/in', 1090 '57' => 'Psychologische/r Assistent/in | Psychologische/r Berater/in', 1091 '32' => 'Psychotherapeut/in', 1092 '3004' => 'Radiologieassistent', 1093 '35' => 'Rettungssanitäter/in', 1094 '1001' => 'Selbstst. Apotheker/in', 1095 '1008' => 'Sonstige (nichtmedizinischer Beruf)', 1096 '5' => 'Student/in', 1097 '100073' => 'Student/in (andere Fächer)', 1098 '105' => 'Student/in der Humanmedizin', 1099 '56' => 'Student/in der Pharmazie', 1100 '54' => 'Student/in der Tiermedizin', 1101 '106' => 'Student/in der Zahnmedizin', 1102 '1007' => 'Techniker/in, IT', 1103 '99114' => 'Therapeut (sonstige)', 1104 '100117' => 'Therapeutischer Beruf (sonstige)', 1105 '3' => 'Tierarzt | Tierärztin', 1106 '5010' => 'Tierheilpraktiker/in', 1107 '100118' => 'Tiermedizinischer Beruf (sonstige)', 1108 '99115' => 'Tiermedizinischer Beruf (sonstige)', 1109 '5017' => 'Tiermedizinische/r Fachangestellte/r', 1110 '100101' => 'Tierphysiotherapeut/in', 1111 '44' => 'Toxikologe', 1112 '36' => 'Unternehmensberater/in', 1113 '37' => 'Weitere medizinische Berufe', 1114 '1005' => 'Wirtschaftswissenschaftler/in', 1115 '4' => 'Zahnarzt | Zahnärztin', 1116 '100119' => 'Zahnmedizinischer Beruf (sonstige)', 1117 '99116' => 'Zahnmedizinischer Beruf (sonstige)', 1118 '66' => 'Zahnmedizinische/r Fachangestellte/r | Dentalhygieniker/in', 1119 '65' => 'Zahn' 1120 ]; 1121 1122 if ( get_locale() === 'de_DE' ) { 1123 $array = $dcl_form_occupational_groups_de; 1124 } else { 1125 $array = $dcl_form_occupational_groups_en; 1126 } 1127 1128 return $array; 1129 } 1130 406 1131 } -
doccheck-login/tags/1.0.7/client/class-dcl-client.php
r2157146 r2340421 105 105 } 106 106 } 107 } elseif ( $filter_menus && true === $this->dcl_has_logged_in_user() ) { 108 109 foreach ( $items as $key => $item ) { 110 $group_restriction = get_post_meta( $item->object_id, 'dcl_group_routing', true ); 111 $access_restriction = get_post_meta( $item->object_id, 'dcl_restrict_access', true ); 112 $occupation_id = $_SESSION['pro_id']; 113 114 if ( $group_restriction != "" && $access_restriction === 'on' ) { 115 116 117 if ( is_array( $occupation_id ) ) { 118 if ( empty( array_intersect( $occupation_id, $group_restriction ) ) ) { 119 120 unset( $items[ $key ] ); 121 122 } 123 124 } else { 125 126 if ( ! in_array( $occupation_id, $group_restriction ) ) { 127 unset( $items[ $key ] ); 128 } 129 130 } 131 } 132 133 } 107 134 } 108 135 109 136 return $items; 137 } 138 139 /** 140 * Filter menu items. 141 * 142 * If user checked the option, this function will filter 143 * out all access restricted pages from menus. 144 * 145 * @param $content 146 * 147 * @return mixed 148 * @since 1.0.0 149 * @access public 150 */ 151 public function dcl_restricted_content( $content ) { 152 // Check if we're inside the main loop in a single Post. 153 if ( ( is_page() || is_singular() ) && in_the_loop() && is_main_query() && $_SESSION['restricted'] ) { 154 return 'You cannot enter this page, as it is only accessible to particular professions. Click <a href="' . $this->dcl_get_professionals_permalink() . '">here</a> to get back.'; 155 } 156 157 return $content; 110 158 } 111 159 … … 120 168 */ 121 169 public function dcl_access_redirect() { 170 global $post; 171 172 $group_resitiction = get_post_meta( $post->ID, 'dcl_group_routing', true ); 173 122 174 123 175 // Skip ahead if page is not access restricted … … 136 188 $this->dcl_do_login(); 137 189 } else { 138 return; 190 191 $occupation_id = $_SESSION['pro_id']; 192 193 //if routing option is not aktiviert reset the page filtering 194 if ( ! get_option( 'dcl_general_profession_routing_active' ) ) { 195 update_post_meta( get_the_ID(), 'dcl_group_routing', '' ); 196 update_post_meta( get_the_ID(), 'dcl_all_group', '' ); 197 } 198 $redirect_url = $this->dcl_get_restricted_redirect_permalink(); 199 200 201 if ( is_array( $occupation_id ) ) { 202 if ( ! empty( array_intersect( $occupation_id, get_post_meta( get_the_ID(), 'dcl_group_routing', true ) ) ) || get_post_meta( get_the_ID(), 'dcl_group_routing', true ) == "" ) { 203 return; 204 } else { 205 206 wp_redirect( $redirect_url ); 207 exit(); 208 209 } 210 } else { 211 212 if ( in_array( $occupation_id, get_post_meta( get_the_ID(), 'dcl_group_routing', true ) ) || get_post_meta( get_the_ID(), 'dcl_group_routing', true ) == "" ) { 213 return; 214 } else { 215 216 wp_redirect( $redirect_url ); 217 exit(); 218 } 219 220 } 221 222 139 223 } 140 224 } … … 148 232 // this page should be protected by the DocCheck login 149 233 $this->dcl_redirect_to_login(); 234 } 235 236 public function register_my_session() { 237 if ( ! session_id() ) { 238 session_start(); 239 } 150 240 } 151 241 … … 170 260 } 171 261 262 $number_of_occupations = get_option( 'dcl_general_add_profession_routing' ); 263 $occupation_activated = get_option( 'dcl_general_profession_routing_active' ); 264 265 $occupations_routing = []; 266 $occupations_routing_first = []; 267 268 if ( $occupation_activated ) { 269 $occupations_routing_first = array( 270 'occupation_id' => get_option( 'dcl_general_jobs' ), 271 'occupation_redirect' => get_option( 'dcl_general_pages' ) 272 ); 273 274 for ( $i = 0; $i < $number_of_occupations; $i ++ ) { 275 $occupations_routing[ $i ] = array( 276 277 'occupation_id' => get_option( 'dcl_general_jobs' . $i ), 278 'occupation_redirect' => get_option( 'dcl_general_pages' . $i ) 279 ); 280 } 281 282 array_push( $occupations_routing, $occupations_routing_first ); 283 284 } 285 286 172 287 // Get login code from request 173 288 $login_code = isset( $_GET['code'] ) ? sanitize_text_field( $_GET['code'] ) : null; 289 290 // get the user occupation_id and parent id 291 $occupation_profession_id = isset( $_GET['dc_profession_id'] ) ? sanitize_text_field( $_GET['dc_profession_id'] ) : null; 292 $occupation_profession_parent_id = isset( $_GET['dc_profession_parent_id'] ) ? sanitize_text_field( $_GET['dc_profession_parent_id'] ) : null; 174 293 175 294 // Send POST request to DocCheck oauth service … … 180 299 ); 181 300 301 182 302 // Success 183 303 // Received access token … … 186 306 $this->dcl_set_session_token( $response->access_token ); 187 307 308 if ( ! session_id() ) { 309 session_start(); 310 } 311 312 if ( $occupation_profession_parent_id != null ) { 313 314 if ( $occupation_profession_parent_id === $occupation_profession_id ) { 315 $occupation_id = $occupation_profession_id; 316 317 $_SESSION['pro_id'] = $occupation_profession_id; 318 } else { 319 $occupation_id = array( $occupation_profession_parent_id, $occupation_profession_id ); 320 $_SESSION['pro_id'] = array( $occupation_profession_parent_id, $occupation_profession_id ); 321 } 322 } else { 323 $_SESSION['pro_id'] = $occupation_profession_id; 324 } 325 326 foreach ( $occupations_routing as $item ) { 327 328 329 if ( is_array( $occupation_id ) ) { 330 331 if ( ! empty( array_intersect( $occupation_id, $item ) ) ) { 332 $redirect_id = $item['occupation_redirect']; 333 } 334 335 } else { 336 337 if ( in_array( $occupation_id, $item ) ) { 338 $redirect_id = $item['occupation_redirect']; 339 } 340 341 } 342 } 343 344 188 345 // Remove parameters from URL 189 wp_redirect( get_permalink( ) );346 wp_redirect( get_permalink( $redirect_id ) ); 190 347 exit; 191 348 } … … 278 435 } 279 436 437 438 private function dcl_request_userdata( $saved_access_token ) { 439 $curl = curl_init( self::DCL_OAUTH_SERVICE_USERDATA . '?access_token=' . $saved_access_token ); 440 curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 ); 441 442 $auth = curl_exec( $curl ); 443 444 return json_decode( $auth ); 445 } 446 447 280 448 /** 281 449 * Request access token validation -
doccheck-login/tags/1.0.7/dc-login.php
r2239647 r2340421 19 19 * Plugin Name: DocCheck Login 20 20 * Description: The official DocCheck plug-in enables the authentication of certified healthcare professionals and facilitates the integration of the DocCheck login. 21 * Version: 1.0. 621 * Version: 1.0.7 22 22 * Author: antwerpes ag <[email protected]> 23 23 * Author URI: https://antwerpes.com -
doccheck-login/tags/1.0.7/includes/class-dcl-activator.php
r1722433 r2340421 34 34 [ 35 35 'post_content' => '[dc-login]', 36 'post_name' => ' doccheck-login',36 'post_name' => 'restricted-login', 37 37 'post_title' => __( 'DocCheck Login', 'doccheck-login' ), 38 38 'post_status' => 'publish', … … 51 51 update_option( 'dcl_general_login_page_id', $login_page[0]->ID ); 52 52 } 53 54 55 $restricted_redirect_page = get_posts( [ 56 'name' => 'doccheck-redirect', 57 'post_type' => 'page', 58 'numberposts' => 1 59 ] ); 60 61 if ( empty( $restricted_redirect_page ) ) { // If it doesn't exist... 62 // Create login page 63 $restricted_redirect_page_id = wp_insert_post( 64 [ 65 'post_content' => "You cannot enter this page, as it is only accessible to particular professions. Click <a href=\"" . home_url() . "\">here</a> to get back.", 66 'post_name' => 'restricted-redirect', 67 'post_title' => __( 'DocCheck Access Restricted', 'doccheck-redirect' ), 68 'post_status' => 'publish', 69 'post_type' => 'page', 70 'ping_status' => 'closed', 71 'comment_status' => 'closed', 72 ] 73 ); 74 75 // Set login page id 76 if ( is_int( $restricted_redirect_page_id ) ) { 77 update_option( 'dcl_general_redirect_page_id', $restricted_redirect_page_id ); 78 } 79 } elseif ( isset( $restricted_redirect_page[0] ) ) { // If it already exist... 80 // Set login page id 81 update_option( 'dcl_general_redirect_page_id', $restricted_redirect_page[0]->ID ); 82 } 53 83 } 54 84 } -
doccheck-login/tags/1.0.7/includes/class-dcl-base.php
r2239640 r2340421 44 44 45 45 /** 46 * OAuth serivce url. 47 * 48 * @since 1.0.0 49 */ 50 const DCL_OAUTH_SERVICE_USERDATA = 'https://login.doccheck.com/service/oauth/user_data/'; 51 52 /** 46 53 * Check token url. 47 54 * … … 59 66 */ 60 67 protected $dcl_page_login_id; 68 69 /** 70 * Page to redirect occupation group. 71 * 72 * 73 * @since 1.0.0 74 * @access protected 75 * @var string 76 */ 77 protected $dcl_page_redirect_id; 61 78 62 79 /** … … 82 99 'xl_red' => 'XL', 83 100 ]; 101 84 102 85 103 /** … … 133 151 public function __construct() { 134 152 $this->dcl_page_login_id = get_option( 'dcl_general_login_page_id', 0 ); 153 $this->dcl_page_redirect_id = get_option( 'dcl_general_redirect_page_id', 0 ); 135 154 $this->dcl_page_professional_circles_id = get_option( 'dcl_general_professional_circles_page_id', 0 ); 136 155 } … … 184 203 // Make sure we have a post object to work with 185 204 // Exclude 404, search and login page from access restriction 186 if ( ! $post || is_404() || is_search() || is_page( $this->dcl_page_login_id ) ) {205 if ( ! $post || is_404() || is_search() || is_page( $this->dcl_page_login_id ) || is_page( $this->dcl_page_redirect_id ) ) { 187 206 return false; 188 207 } 189 208 190 209 $access_restricted = get_post_meta( $post->ID, 'dcl_restrict_access', true ); 191 210 192 211 if ( $access_restricted === 'on' ) { 193 212 return true; … … 237 256 238 257 /** 258 * Get permalink to redirect page, when user is logged in but access to a page is restricted. 259 * 260 * @return string $redirect_url 261 * @since 1.0.0 262 * @access public 263 */ 264 public function dcl_get_restricted_redirect_permalink() { 265 // Get url for login page or home as fallback 266 if ( (int) $this->dcl_page_redirect_id > 0 ) { 267 $redirect_url = get_permalink( $this->dcl_page_redirect_id ); 268 } else { 269 $redirect_url = home_url(); 270 } 271 272 return $redirect_url; 273 } 274 275 /** 239 276 * Get permalink to professionals page. 240 277 * … … 342 379 public function dcl_get_session_redirect_url() { 343 380 if ( isset( $_SESSION['dc_login_redirect_url'] ) && ! empty( $_SESSION['dc_login_redirect_url'] ) ) { 344 // Formerly targeted page will be used to redirect to 381 // Formerly targeted page will be used to redirect to 345 382 return $_SESSION['dc_login_redirect_url']; 346 383 } else if ( (int) $this->dcl_page_professional_circles_id > 0 ) { … … 348 385 return get_permalink( $this->dcl_page_professional_circles_id ); 349 386 } 350 387 351 388 return home_url(); 352 389 } -
doccheck-login/tags/1.0.7/includes/class-dcl.php
r2239641 r2340421 66 66 67 67 $this->plugin_name = 'dc-login'; 68 $this->version = '1.0. 6';68 $this->version = '1.0.7'; 69 69 70 70 $this->set_loader(); … … 128 128 $this->loader->add_action( 'add_meta_boxes', $plugin_admin_meta_boxes, 'dcl_register_meta_boxes_custom_post_type' ); 129 129 $this->loader->add_action( 'save_post', $plugin_admin_meta_boxes, 'dcl_save_meta_boxes' ); 130 $this->loader->add_action( 'admin_enqueue_scripts', $plugin_admin_meta_boxes, 'enqueue_styles' ); 131 $this->loader->add_action( 'admin_enqueue_scripts', $plugin_admin_meta_boxes, 'enqueue_scripts' ); 130 132 131 133 // Columns … … 158 160 159 161 $this->loader->add_action( 'init', $plugin_public, 'dcl_start_session' ); 162 $this->loader->add_action( 'init', $plugin_public, 'register_my_session' ); 160 163 $this->loader->add_action( 'pre_get_posts', $plugin_public, 'dcl_filter_search_results' ); 161 164 $this->loader->add_filter( 'wp_get_nav_menu_items', $plugin_public, 'dcl_filter_menus' ); -
doccheck-login/tags/1.0.7/languages/doccheck-login-de_DE.po
r1722433 r2340421 2 2 msgstr "" 3 3 "Project-Id-Version: DocCheck Login\n" 4 "POT-Creation-Date: 20 17-07-19 09:08+0200\n"5 "PO-Revision-Date: 20 17-08-31 08:48+0200\n"4 "POT-Creation-Date: 2020-06-15 13:33+0200\n" 5 "PO-Revision-Date: 2020-07-14 15:54+0200\n" 6 6 "Last-Translator: \n" 7 7 "Language-Team: antwerpes ag <[email protected]>\n" … … 10 10 "Content-Type: text/plain; charset=UTF-8\n" 11 11 "Content-Transfer-Encoding: 8bit\n" 12 "X-Generator: Poedit 1.8.11\n"12 "X-Generator: Poedit 2.3.1\n" 13 13 "X-Poedit-Basepath: ..\n" 14 14 "Plural-Forms: nplurals=2; plural=(n != 1);\n" … … 24 24 msgstr "Zugangsbeschränkung" 25 25 26 #: admin/class-dcl-metaboxes.php: 25 admin/class-dcl-settings.php:4427 #: admin/class-dcl-settings.php:45 admin/class-dcl-settings.php: 6028 #: includes/class-dcl-activator.php:3726 #: admin/class-dcl-metaboxes.php:72 admin/class-dcl-metaboxes.php:86 27 #: admin/class-dcl-settings.php:45 admin/class-dcl-settings.php:46 28 #: admin/class-dcl-settings.php:61 includes/class-dcl-activator.php:37 29 29 msgid "DocCheck Login" 30 30 msgstr "DocCheck Login" 31 31 32 #: admin/class-dcl-metaboxes.php: 4432 #: admin/class-dcl-metaboxes.php:129 33 33 msgid "Restrict access with login" 34 34 msgstr "Zugang durch Login beschränken" 35 35 36 #: admin/class-dcl-settings.php:81 36 #: admin/class-dcl-metaboxes.php:140 37 msgid "All approved professions" 38 msgstr "Alle zugelassenen Berufsgruppen" 39 40 #: admin/class-dcl-metaboxes.php:145 41 msgid "Please select a profession" 42 msgstr "Bitte wählen Sie eine Berufsgruppe" 43 44 #: admin/class-dcl-settings.php:173 37 45 msgid "First steps" 38 46 msgstr "Erste Schritte" 39 47 40 #: admin/class-dcl-settings.php: 8348 #: admin/class-dcl-settings.php:175 41 49 msgid "In order for this plugin to work you'll need:" 42 50 msgstr "Damit das Plugin ordnungsgemäß funktioniert, benötigst Du:" 43 51 44 #: admin/class-dcl-settings.php: 8552 #: admin/class-dcl-settings.php:177 45 53 #, php-format 46 54 msgid "" … … 51 59 "Flexikon</a>)." 52 60 53 #: admin/class-dcl-settings.php: 8661 #: admin/class-dcl-settings.php:178 54 62 #, php-format 55 63 msgid "" … … 60 68 "Login ID um ein Client Secret zu erhalten." 61 69 62 #: admin/class-dcl-settings.php: 8770 #: admin/class-dcl-settings.php:179 63 71 msgid "" 64 72 "Note that we recommend exchange of the secret via a secure communications " … … 69 77 "Deine Telefonnummer mit." 70 78 71 #: admin/class-dcl-settings.php: 8979 #: admin/class-dcl-settings.php:181 72 80 #, php-format 73 81 msgid "" … … 80 88 "\"%1$s\" target=\"_blank\">%2$s</a>)." 81 89 82 #: admin/class-dcl-settings.php: 9690 #: admin/class-dcl-settings.php:188 83 91 msgid "Shortcodes" 84 92 msgstr "Shortcodes" 85 93 86 #: admin/class-dcl-settings.php: 9894 #: admin/class-dcl-settings.php:190 87 95 msgid "There are a few shortcods available:" 88 96 msgstr "Es stehen ein paar Shortcodes zur Verfügung:" 89 97 90 #: admin/class-dcl-settings.php:1 0098 #: admin/class-dcl-settings.php:192 91 99 msgid "Login form" 92 100 msgstr "Login-Formular" 93 101 94 #: admin/class-dcl-settings.php:1 03102 #: admin/class-dcl-settings.php:195 95 103 msgid "Logout link" 96 104 msgstr "Logout-Link" 97 105 98 #: admin/class-dcl-settings.php:1 06106 #: admin/class-dcl-settings.php:198 99 107 msgid "HTML sitemap" 100 108 msgstr "HTML Sitemap" 101 109 102 #: admin/class-dcl-settings.php: 108110 #: admin/class-dcl-settings.php:200 103 111 msgid "" 104 112 "Displays sitemap with or without access restricted pages, depending on the " … … 108 116 "ob der User eingeloggt ist." 109 117 110 #: admin/class-dcl-settings.php: 110118 #: admin/class-dcl-settings.php:202 111 119 msgid "Hide content" 112 120 msgstr "Inhalt verstecken" 113 121 114 #: admin/class-dcl-settings.php: 112122 #: admin/class-dcl-settings.php:204 115 123 msgid "Hides content for users that are not logged in via DocCheck." 116 124 msgstr "" … … 118 126 "haben." 119 127 120 #: admin/class-dcl-settings.php: 130128 #: admin/class-dcl-settings.php:233 121 129 msgid "General" 122 130 msgstr "Allgemein" 123 131 124 #: admin/class-dcl-settings.php: 137132 #: admin/class-dcl-settings.php:240 125 133 msgid "Form presets" 126 134 msgstr "Login-Formular Voreinstellungen" 127 135 128 #: admin/class-dcl-settings.php: 147136 #: admin/class-dcl-settings.php:329 129 137 msgid "Login id" 130 138 msgstr "Login ID" 131 139 132 #: admin/class-dcl-settings.php: 153140 #: admin/class-dcl-settings.php:335 133 141 msgid "Login id (debug mode)" 134 142 msgstr "Login ID (Debugmodus)" 135 143 136 #: admin/class-dcl-settings.php: 159144 #: admin/class-dcl-settings.php:341 137 145 msgid "Client secret" 138 146 msgstr "Client Secret" 139 147 140 #: admin/class-dcl-settings.php: 165148 #: admin/class-dcl-settings.php:347 141 149 msgid "Client secret (debug mode)" 142 150 msgstr "Client Secret (Debugmodus)" 143 151 144 #: admin/class-dcl-settings.php: 171152 #: admin/class-dcl-settings.php:353 145 153 msgid "Login page" 146 154 msgstr "Login-Seite" 147 155 148 #: admin/class-dcl-settings.php: 181156 #: admin/class-dcl-settings.php:363 149 157 msgid "Target page" 150 158 msgstr "Ziel-Seite" 151 159 152 #: admin/class-dcl-settings.php:191 160 #: admin/class-dcl-settings.php:375 161 msgid "Profession routing" 162 msgstr "Berufsgruppen-Routing" 163 164 #: admin/class-dcl-settings.php:379 165 msgid "activated" 166 msgstr "aktiviert" 167 168 #: admin/class-dcl-settings.php:384 169 msgid "'Profession group restricted' redirect page" 170 msgstr "'Zugriff für Berufsgruppe nicht erlaubt' Umleitungsseite" 171 172 #: admin/class-dcl-settings.php:394 173 msgid "Add profession routing" 174 msgstr "Berufsgruppe hinzufügen" 175 176 #: admin/class-dcl-settings.php:432 153 177 msgid "Menu items" 154 178 msgstr "Menüelemente" 155 179 156 #: admin/class-dcl-settings.php: 195180 #: admin/class-dcl-settings.php:436 157 181 msgid "Hide access restricted page from menus" 158 182 msgstr "Zugangsbeschränkte Seiten nicht im Menü anzeigen" 159 183 160 #: admin/class-dcl-settings.php: 201184 #: admin/class-dcl-settings.php:443 161 185 msgid "Size" 162 186 msgstr "Größe" 163 187 164 #: admin/class-dcl-settings.php: 210188 #: admin/class-dcl-settings.php:452 165 189 msgid "Language" 166 190 msgstr "Sprache" 167 191 168 #: admin/class-dcl-settings.php:219 192 #: admin/class-dcl-settings.php:461 193 msgid "Language (WPML)" 194 msgstr "Sprache (WPML)" 195 196 #: admin/class-dcl-settings.php:465 197 msgid "Set language automatically using WPML" 198 msgstr "Sprache automatisch mit WPML setzen" 199 200 #: admin/class-dcl-settings.php:470 169 201 msgid "Custom template" 170 202 msgstr "Benutzerdefiniertes Template" 171 203 172 #: admin/class-dcl-settings.php: 225204 #: admin/class-dcl-settings.php:476 173 205 msgid "Custom template width" 174 206 msgstr "Template Breite" 175 207 176 #: admin/class-dcl-settings.php: 231208 #: admin/class-dcl-settings.php:482 177 209 msgid "Custom template height" 178 210 msgstr "Template Höhe" 179 211 180 #: admin/class-dcl-settings.php: 384212 #: admin/class-dcl-settings.php:824 181 213 msgid "Front Page" 182 214 msgstr "Startseite" 183 215 184 #: client/class-dcl-shortcodes.php: 66216 #: client/class-dcl-shortcodes.php:93 185 217 msgid "No DocCheck login id given." 186 218 msgstr "Es wurde keine DocCheck Login ID angegeben." 187 219 188 #: client/class-dcl-shortcodes.php: 91220 #: client/class-dcl-shortcodes.php:130 189 221 msgid "You're already logged in." 190 222 msgstr "Sie sind bereits eingeloggt." 191 223 192 #: client/class-dcl-shortcodes.php:1 02224 #: client/class-dcl-shortcodes.php:141 193 225 msgid "Login" 194 226 msgstr "Login" 195 227 196 #: client/class-dcl-shortcodes.php:1 29228 #: client/class-dcl-shortcodes.php:168 197 229 msgid "Logout" 198 230 msgstr "Logout" 199 200 #~ msgid ""201 #~ "DocCheck Login plugin created a <a href=\"$1%s\">login page</a> for you, "202 #~ "but some configuration is still required. Visit the <a href=\"$2%s"203 #~ "\">settings page</a>."204 #~ msgstr ""205 #~ "DocCheck Login hat eine <a href=\"$1%s\">Login-Seite</a> für Dich "206 #~ "erstellt, aber es müssen noch weitere Einstellungen getroffen werden. "207 #~ "Besuche die <a href=\"$2%s\">Einstellungen</a>."208 209 #~ msgid ""210 #~ "DocCheck Login will use your existing <a href=\"$1%s\">login page</a>, "211 #~ "but some configuration is still required. Visit the <a href=\"$2%s"212 #~ "\">settings page</a>."213 #~ msgstr ""214 #~ "DocCheck Login benutzt Deine existierende <a href=\"$1%s\">Login-Seite</"215 #~ "a>, aber es müssen noch weitere Einstellungen getroffen werden. Besuche "216 #~ "die <a href=\"$2%s\">Einstellungen</a>."217 218 #~ msgid ""219 #~ "DocCheck Login could't create a login page. Please <a href=\"%s"220 #~ "\">configure the plugin</a>."221 #~ msgstr ""222 #~ "DocCheck Login konnte keine Login-Seite anlegen. Besuche bitte die <a "223 #~ "href=\"%s\">Einstellungen</a> um das Plugin zu konfigurieren."224 225 #~ msgid ""226 #~ "Fill in the form below according to the information given by the DocCheck "227 #~ "login administration backend (see <a href=\"%1$s\">%2$s</a>)."228 #~ msgstr ""229 #~ "Fülle das unten stehende Formular entsprechend der Informationen aus, die "230 #~ "Du in der Administration (siehe <a href=\"%1$s\">%2$s</a>) Deines "231 #~ "DocCheck Logins erhalten hast."232 233 #~ msgid ""234 #~ "Fill in the form below according to the information given by the DocCheck "235 #~ "login administration backend."236 #~ msgstr ""237 #~ "Fülle das unten stehende Formular entsprechend der Informationen aus, die "238 #~ "Du in der Administration Deines DocCheck Logins erhalten hast."239 240 #~ msgid "Html sitemap"241 #~ msgstr "HTML Sitemap"242 243 #~ msgid "Form"244 #~ msgstr "Formular" -
doccheck-login/tags/1.0.7/languages/doccheck-login.pot
r1722433 r2340421 1 #, fuzzy 1 2 msgid "" 2 3 msgstr "" 3 4 "Project-Id-Version: DocCheck Login\n" 4 "POT-Creation-Date: 20 17-08-31 08:12+0200\n"5 "POT-Creation-Date: 2020-05-29 18:24+0200\n" 5 6 "PO-Revision-Date: 2017-08-31 08:12+0200\n" 6 7 "Last-Translator: \n" … … 10 11 "Content-Type: text/plain; charset=UTF-8\n" 11 12 "Content-Transfer-Encoding: 8bit\n" 12 "X-Generator: Poedit 1.8.11\n"13 "X-Generator: Poedit 2.3.1\n" 13 14 "X-Poedit-Basepath: ../../../doccheck-login\n" 14 15 "Plural-Forms: nplurals=2; plural=(n != 1);\n" … … 173 174 #: tags/1.0.0/admin/class-dcl-settings.php:195 174 175 #: trunk/admin/class-dcl-settings.php:195 176 msgid "Occupational groups-Routing" 177 msgstr "Berufsgruppen-Routing" 178 179 #: tags/1.0.0/admin/class-dcl-settings.php:195 180 #: trunk/admin/class-dcl-settings.php:195 175 181 msgid "Hide access restricted page from menus" 176 182 msgstr "" … … 225 231 msgid "Logout" 226 232 msgstr "" 233 234 msgid "Profession routing" 235 msgstr "Berufsgruppen-Routing" 236 237 msgid "activated" 238 msgstr "aktiviert" 239 240 msgid "Add profession routing" 241 msgstr "Berufsgruppe hinzufügen" 242 243 msgid "All approved professional groups" 244 msgstr "Alle zugelassenen Berufsgruppen" 245 246 msgid "Please choose a professional group" 247 msgstr "Bitte wählen Sie eine Berufsgruppe" 248 249 #: admin/class-dcl-settings.php:384 250 msgid "'Profession group restricted' redirect page" 251 msgstr "'Zugriff für Berufsgruppe nicht erlaubt' Umleitungsseite"
Note: See TracChangeset
for help on using the changeset viewer.