Implement direct message receive and background services manager, take 1.
[openemr.git] / library / globals.inc.php
blobebe5c02c84c1621e6da1695857fc601a5911648b
1 <?php
2 // Copyright (C) 2010 Rod Roark <rod@sunsetsystems.com>
3 //
4 // This program is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU General Public License
6 // as published by the Free Software Foundation; either version 2
7 // of the License, or (at your option) any later version.
9 // $GLOBALS['print_command'] is the
10 // Print command for spooling to printers, used by statements.inc.php
11 // This is the command to be used for printing (without the filename).
12 // The word following "-P" should be the name of your printer. This
13 // example is designed for 8.5x11-inch paper with 1-inch margins,
14 // 10 CPI, 6 LPI, 65 columns, 54 lines per page.
16 // IF lpr services are installed on Windows this setting will be similar
17 // Otherwise configure it as needed (print /d:PRN) might be an option for Windows parallel printers
19 // Current supported languages: // Allow capture of term for translation:
20 // Albanian // xl('Albanian')
21 // Amharic // xl('Amharic')
22 // Arabic // xl('Arabic')
23 // Armenian // xl('Armenian')
24 // Bahasa Indonesia // xl('Bahasa Indonesia')
25 // Bengali // xl('Bengali')
26 // Chinese (Simplified) // xl('Chinese (Simplified)')
27 // Chinese (Traditional) // xl('Chinese (Traditional)')
28 // Czech // xl('Czech')
29 // Danish // xl('Danish')
30 // Dutch // xl('Dutch')
31 // English (Indian) // xl('English (Indian)')
32 // English (Standard) // xl('English (Standard)')
33 // Estonian // xl('Estonian')
34 // French // xl('French (Standard)')
35 // French // xl('French (Canadian)')
36 // German // xl('German')
37 // Greek // xl('Greek')
38 // Hebrew // xl('Hebrew')
39 // Hindi // xl('Hindi')
40 // Hungarian // xl('Hungarian')
41 // Italian // xl('Italian')
42 // Norwegian // xl('Norwegian')
43 // Persian // xl('Persian')
44 // Polish // xl('Polish')
45 // Portuguese (Brazilian) // xl('Portuguese (Brazilian)')
46 // Portuguese (European) // xl('Portuguese (European)')
47 // Romanian // xl('Romanian')
48 // Russian // xl('Russian')
49 // Slovak // xl('Slovak')
50 // Spanish (Latin American) // xl('Spanish (Latin American)')
51 // Spanish (Spain) // xl('Spanish (Spain)')
52 // Swedish // xl('Swedish')
53 // Turkish // xl('Turkish')
54 // Ukrainian // xl('Ukrainian')
55 // Vietnamese // xl('Vietnamese')
57 // OS-dependent stuff.
58 if (stristr(PHP_OS, 'WIN')) {
59 // MS Windows
60 $mysql_bin_dir = 'C:/xampp/mysql/bin';
61 $perl_bin_dir = 'C:/xampp/perl/bin';
62 $temporary_files_dir = 'C:/windows/temp';
63 $backup_log_dir = 'C:/windows/temp';
65 else {
66 // Everything else
67 $mysql_bin_dir = '/usr/bin';
68 $perl_bin_dir = '/usr/bin';
69 $temporary_files_dir = '/tmp';
70 $backup_log_dir = '/tmp';
73 // Language constant declarations:
74 // xl('Appearance')
75 // xl('Locale')
76 // xl('Features')
77 // xl('Calendar')
78 // xl('Security')
79 // xl('Notifications')
80 // xl('Miscellaneous')
82 // List of user specific tabs and globals
83 $USER_SPECIFIC_TABS = array('Appearance',
84 'Locale',
85 'Calendar',
86 'Connectors');
87 $USER_SPECIFIC_GLOBALS = array('default_top_pane',
88 'concurrent_layout',
89 'css_header',
90 'gbl_pt_list_page_size',
91 'gbl_pt_list_new_window',
92 'units_of_measurement',
93 'us_weight_format',
94 'date_display_format',
95 'time_display_format',
96 'event_color',
97 'erx_import_status_message');
99 $GLOBALS_METADATA = array(
101 // Appearance Tab
103 'Appearance' => array(
105 'default_top_pane' => array(
106 xl('Main Top Pane Screen'), // descriptive name
107 array(
108 'main_info.php' => xl('Calendar Screen'),
109 '../new/new.php' => xl('Patient Search/Add Screen'),
111 'main_info.php', // default = calendar
112 xl('Type of screen layout')
115 'concurrent_layout' => array(
116 xl('Layout Style'), // descriptive name
117 array(
118 '0' => xl('Old style layout with no left menu'),
119 '1' => xl('Navigation menu consists of pairs of radio buttons'),
120 '2' => xl('Navigation menu is a tree view'),
121 '3' => xl('Navigation uses a sliding menu'),
123 '3', // default = tree menu
124 xl('Type of screen layout')
127 'css_header' => array(
128 xl('Theme'),
129 'css',
130 'style_oemr.css',
131 xl('Pick a CSS theme.')
134 'gbl_nav_area_width' => array(
135 xl('Navigation Area Width'),
136 'num',
137 '150',
138 xl('Width in pixels of the left navigation frame.')
141 'openemr_name' => array(
142 xl('Application Title'),
143 'text',
144 'OpenEMR',
145 xl('Application name for login page and main window title.')
148 'full_new_patient_form' => array(
149 xl('New Patient Form'),
150 array(
151 '0' => xl('Old-style static form without search or duplication check'),
152 '1' => xl('All demographics fields, with search and duplication check'),
153 '2' => xl('Mandatory or specified fields only, search and dup check'),
154 '3' => xl('Mandatory or specified fields only, dup check, no search'),
156 '1', // default
157 xl('Style of form used for adding new patients')
160 'patient_search_results_style' => array(
161 xl('Patient Search Results Style'),
162 array(
163 '0' => xl('Encounter statistics'),
164 '1' => xl('Mandatory and specified fields'),
166 '0', // default
167 xl('Type of columns displayed for patient search results')
170 'gbl_tall_nav_area' => array(
171 xl('Tall Navigation Area'),
172 'bool', // data type
173 '0', // default = false
174 xl('Navigation area uses full height of frameset')
177 'gbl_nav_visit_forms' => array(
178 xl('Navigation Area Visit Forms'),
179 'bool', // data type
180 '1', // default = true
181 xl('Navigation area includes encounter forms')
184 'simplified_demographics' => array(
185 xl('Simplified Demographics'),
186 'bool', // data type
187 '0', // default = false
188 xl('Omit insurance and some other things from the demographics form')
191 'simplified_prescriptions' => array(
192 xl('Simplified Prescriptions'),
193 'bool', // data type
194 '0', // default = false
195 xl('Omit form, route and interval which then become part of dosage')
198 'simplified_copay' => array(
199 xl('Simplified Co-Pay'),
200 'bool', // data type
201 '0', // default = false
202 xl('Omit method of payment from the co-pay panel')
205 'use_charges_panel' => array(
206 xl('Use Charges Panel'),
207 'bool', // data type
208 '0', // default = false
209 xl('Enables the old Charges panel for entering billing codes and payments. Not recommended, use the Fee Sheet instead.')
212 // TajEmo Work BY CB 2012/06/21 10:42:31 AM added option to Hide Fees
213 'enable_fees_in_left_menu' => array(
214 xl('Enable Fees In Left Menu'),
215 'bool', // data type
216 '1', // default = true
217 xl('Enable Fees In Left Menu')
219 // EDI history 2012-09-13
220 'enable_edihistory_in_left_menu' => array(
221 xl('Enable EDI History In Left Menu'),
222 'bool', // data type
223 '1', // default = true
224 xl('EDI History (under Fees) for storing and interpreting EDI claim response files')
227 'online_support_link' => array(
228 xl('Online Support Link'),
229 'text', // data type
230 'http://open-emr.org/',
231 xl('URL for OpenEMR support.')
234 'encounter_page_size' => array(
235 xl('Encounter Page Size'),
236 array(
237 '0' => xl('Show All'),
238 '5' => '5',
239 '10' => '10',
240 '15' => '15',
241 '20' => '20',
242 '25' => '25',
243 '50' => '50',
245 '20',
246 xl('Number of encounters to display per page.')
249 'gbl_pt_list_page_size' => array(
250 xl('Patient List Page Size'),
251 array(
252 '10' => '10',
253 '25' => '25',
254 '50' => '50',
255 '100' => '100',
257 '10',
258 xl('Number of patients to display per page in the patient list.')
261 'gbl_pt_list_new_window' => array(
262 xl('Patient List New Window'),
263 'bool', // data type
264 '0', // default = false
265 xl('Default state of New Window checkbox in the patient list.')
270 // Locale Tab
272 'Locale' => array(
274 'language_default' => array(
275 xl('Default Language'),
276 'lang', // data type
277 'English (Standard)', // default = english
278 xl('Default language if no other is allowed or chosen.')
281 'language_menu_showall' => array(
282 xl('All Languages Allowed'),
283 'bool', // data type
284 '1', // default = true
285 xl('Allow all available languages as choices on menu at login.')
288 'language_menu_other' => array(
289 xl('Allowed Languages'),
290 'm_lang', // data type
291 '', // default = none
292 xl('Select which languages, if any, may be chosen at login. (only pertinent if above All Languages Allowed is turned off)')
295 'allow_debug_language' => array(
296 xl('Allow Debugging Language'),
297 'bool', // data type
298 '1', // default = true during development and false for production releases
299 xl('This will allow selection of the debugging (\'dummy\') language.')
302 'translate_layout' => array(
303 xl('Translate Layouts'),
304 'bool', // data type
305 '1', // default = true
306 xl('Is text from form layouts to be translated?')
309 'translate_lists' => array(
310 xl('Translate Lists'),
311 'bool', // data type
312 '1', // default = true
313 xl('Is text from lists to be translated?')
316 'translate_gacl_groups' => array(
317 xl('Translate Access Control Groups'),
318 'bool', // data type
319 '1', // default = true
320 xl('Are access control group names to be translated?')
323 'translate_form_titles' => array(
324 xl('Translate Patient Note Titles'),
325 'bool', // data type
326 '1', // default = true
327 xl('Are patient note titles to be translated?')
330 'translate_document_categories' => array(
331 xl('Translate Document Categories'),
332 'bool', // data type
333 '1', // default = true
334 xl('Are document category names to be translated?')
337 'translate_appt_categories' => array(
338 xl('Translate Appointment Categories'),
339 'bool', // data type
340 '1', // default = true
341 xl('Are appointment category names to be translated?')
344 'units_of_measurement' => array(
345 xl('Units for Visit Forms'),
346 array(
347 '1' => xl('Show both US and metric (main unit is US)'),
348 '2' => xl('Show both US and metric (main unit is metric)'),
349 '3' => xl('Show US only'),
350 '4' => xl('Show metric only'),
352 '1', // default = Both/US
353 xl('Applies to the Vitals form and Growth Chart')
356 'us_weight_format' => array(
357 xl('Display Format for US Weights'),
358 array(
359 '1'=>xl('Show pounds as decimal value'),
360 '2'=>xl('Show pounds and ounces')
362 '1',
363 xl('Applies to Vitals form')
366 'disable_deprecated_metrics_form' => array(
367 xl('Disable Old Metric Vitals Form'),
368 'bool', // data type
369 '1', // default = true
370 xl('This was the older metric-only Vitals form, now deprecated.')
373 'phone_country_code' => array(
374 xl('Telephone Country Code'),
375 'num',
376 '1', // default = North America
377 xl('1 = North America. See http://www.wtng.info/ for a list of other country codes.')
380 'date_display_format' => array(
381 xl('Date Display Format'),
382 array(
383 '0' => xl('YYYY-MM-DD'),
384 '1' => xl('MM/DD/YYYY'),
385 '2' => xl('DD/MM/YYYY'),
387 '0',
388 xl('Format used to display most dates.')
391 'time_display_format' => array(
392 xl('Time Display Format'),
393 array(
394 '0' => xl('24 hr'),
395 '1' => xl('12 hr'),
397 '0',
398 xl('Format used to display most times.')
401 'currency_decimals' => array(
402 xl('Currency Decimal Places'),
403 array(
404 '0' => xl('0'),
405 '1' => xl('1'),
406 '2' => xl('2'),
408 '2',
409 xl('Number of digits after decimal point for currency, usually 0 or 2.')
412 'currency_dec_point' => array(
413 xl('Currency Decimal Point Symbol'),
414 array(
415 '.' => xl('Period'),
416 ',' => xl('Comma'),
418 '.',
419 xl('Symbol used as the decimal point for currency. Not used if Decimal Places is 0.')
422 'currency_thousands_sep' => array(
423 xl('Currency Thousands Separator'),
424 array(
425 ',' => xl('Comma'),
426 '.' => xl('Period'),
427 ' ' => xl('Space'),
428 '' => xl('None'),
430 ',',
431 xl('Symbol used to separate thousands for currency.')
434 'gbl_currency_symbol' => array(
435 xl('Currency Designator'),
436 'text', // data type
437 '$', // default
438 xl('Code or symbol to indicate currency')
443 // Features Tab
445 'Features' => array(
447 'specific_application' => array(
448 xl('Specific Application'),
449 array(
450 '0' => xl('None'),
451 '1' => xl('Athletic team'),
452 '2' => xl('IPPF'),
453 '3' => xl('Weight loss clinic'),
455 '0', // default
456 xl('Indicator for specialized usage')
459 'inhouse_pharmacy' => array(
460 xl('Drugs and Products'),
461 array(
462 '0' => xl('Do not inventory and sell any products'),
463 '1' => xl('Inventory and sell drugs only'),
464 '2' => xl('Inventory and sell both drugs and non-drug products'),
465 '3' => xl('Products but no prescription drugs and no templates'),
467 '0', // default
468 xl('Option to support inventory and sales of products')
471 'disable_chart_tracker' => array(
472 xl('Disable Chart Tracker'),
473 'bool', // data type
474 '0', // default = false
475 xl('Removes the Chart Tracker feature')
478 'disable_phpmyadmin_link' => array(
479 xl('Disable phpMyAdmin'),
480 'bool', // data type
481 '0', // default = false
482 xl('Removes support for phpMyAdmin')
485 'disable_immunizations' => array(
486 xl('Disable Immunizations'),
487 'bool', // data type
488 '0', // default = false
489 xl('Removes support for immunizations')
492 'disable_prescriptions' => array(
493 xl('Disable Prescriptions'),
494 'bool', // data type
495 '0', // default = false
496 xl('Removes support for prescriptions')
499 'omit_employers' => array(
500 xl('Omit Employers'),
501 'bool', // data type
502 '0', // default = false
503 xl('Omit employer information in patient demographics')
506 'select_multi_providers' => array(
507 xl('Support Multi-Provider Events'),
508 'bool', // data type
509 '0', // default = false
510 xl('Support calendar events that apply to multiple providers')
513 'disable_non_default_groups' => array(
514 xl('Disable User Groups'),
515 'bool', // data type
516 '1', // default = true
517 xl('Normally this should be checked. Not related to access control.')
520 'ignore_pnotes_authorization' => array(
521 xl('Skip Authorization of Patient Notes'),
522 'bool', // data type
523 '1', // default = true
524 xl('Do not require patient notes to be authorized')
527 'support_encounter_claims' => array(
528 xl('Allow Encounter Claims'),
529 'bool', // data type
530 '0', // default = false
531 xl('Allow creation of claims containing diagnoses but not procedures or charges. Most clinics do not want this.')
534 'advance_directives_warning' => array(
535 xl('Advance Directives Warning'),
536 'bool', // data type
537 '0', // default = false
538 xl('Display advance directives in the demographics page.')
541 'configuration_import_export' => array(
542 xl('Configuration Export/Import'),
543 'bool', // data type
544 '0', // default = false
545 xl('Support export/import of configuration data via the Backup page.')
548 'restrict_user_facility' => array(
549 xl('Restrict Users to Facilities'),
550 'bool', // data type
551 '0', // default
552 xl('Restrict non-authorized users to the Schedule Facilities set in User admin.')
555 'set_facility_cookie' => array(
556 xl('Remember Selected Facility'),
557 'bool', // data type
558 '0', // default
559 xl('Set a facility cookie to remember the selected facility between logins.')
562 'receipts_by_provider' => array(
563 xl('Print Receipts by Provider'),
564 'bool',
565 '0', // default
566 xl('Causes Receipts to Print Encounter/Primary Provider Info')
569 'discount_by_money' => array(
570 xl('Discounts as Monetary Amounts'),
571 'bool', // data type
572 '1', // default = true
573 xl('Discounts at checkout time are entered as money amounts, as opposed to percentage.')
576 'gbl_visit_referral_source' => array(
577 xl('Referral Source for Encounters'),
578 'bool', // data type
579 '0', // default = false
580 xl('A referral source may be specified for each visit.')
583 'gbl_mask_patient_id' => array(
584 xl('Mask for Patient IDs'),
585 'text', // data type
586 '', // default
587 xl('Specifies formatting for the external patient ID. # = digit, @ = alpha, * = any character. Empty if not used.')
590 'gbl_mask_invoice_number' => array(
591 xl('Mask for Invoice Numbers'),
592 'text', // data type
593 '', // default
594 xl('Specifies formatting for invoice reference numbers. # = digit, @ = alpha, * = any character. Empty if not used.')
597 'gbl_mask_product_id' => array(
598 xl('Mask for Product IDs'),
599 'text', // data type
600 '', // default
601 xl('Specifies formatting for product NDC fields. # = digit, @ = alpha, * = any character. Empty if not used.')
604 'force_billing_widget_open' => array(
605 xl('Force Billing Widget Open'),
606 'bool', // data type
607 '0', // default = false
608 xl('This will force the Billing Widget in the Patient Summary screen to always be open.')
611 'num_past_appointments_to_show' => array(
612 xl('Past Appointment Display Widget'),
613 'num', // data type
614 '0', // default = false
615 xl('A positive number will show that many past appointments on a Widget in the Patient Summary screen.')
618 'activate_ccr_ccd_report' => array(
619 xl('Activate CCR/CCD Reporting'),
620 'bool', // data type
621 '1', // default = true
622 xl('This will activate the CCR(Continuity of Care Record) and CCD(Continuity of Care Document) reporting.')
625 'hide_document_encryption' => array(
626 xl('Hide Encryption/Decryption Options In Document Management'),
627 'bool', // data type
628 '1', // default = true
629 xl('This will deactivate document the encryption and decryption features, and hide them in the UI.')
632 'use_custom_immun_list' => array(
633 xl('Use Custom Immunization List'),
634 'bool', // data type
635 '0', // default = true
636 xl('This will use the custom immunizations list rather than the standard CVX immunization list.')
641 //Documents Tab
642 'Documents' => array(
643 'document_storage_method' => array(
644 xl('Document Storage Method'),
645 array(
646 '0' => xl('Hard Disk'),
647 '1' => xl('CouchDB')
649 '0', // default
650 xl('Option to save method of document storage.')
652 'couchdb_host' => array(
653 xl('CouchDB HostName'),
654 'text',
655 'localhost',
656 xl('CouchDB host'),
658 'couchdb_user' => array(
659 xl('CouchDB UserName'),
660 'text',
662 xl('Username to connect to CouchDB'),
664 'couchdb_pass' => array(
665 xl('CouchDB Password'),
666 'text',
668 xl('Password to connect to CouchDB'),
670 'couchdb_port' => array(
671 xl('CouchDB Port'),
672 'text',
673 '5984',
674 xl('CouchDB port'),
676 'couchdb_dbase' => array(
677 xl('CouchDB Database'),
678 'text',
680 xl('CouchDB database name'),
682 'couchdb_log' => array(
683 xl('CouchDB Log Enable'),
684 'bool',
685 '0',
686 xl('Enable log for document uploads/downloads to CouchDB'),
690 // Calendar Tab
692 'Calendar' => array(
694 'disable_calendar' => array(
695 xl('Disable Calendar'),
696 'bool', // data type
697 '0', // default
698 xl('Do not display the calendar.')
701 'schedule_start' => array(
702 xl('Calendar Starting Hour'),
703 'hour',
704 '8', // default
705 xl('Beginning hour of day for calendar events.')
708 'schedule_end' => array(
709 xl('Calendar Ending Hour'),
710 'hour',
711 '17', // default
712 xl('Ending hour of day for calendar events.')
715 'calendar_interval' => array(
716 xl('Calendar Interval'),
717 array(
718 '5' => '5',
719 '10' => '10',
720 '15' => '15',
721 '20' => '20',
722 '30' => '30',
723 '60' => '60',
725 '15', // default
726 xl('The time granularity of the calendar and the smallest interval in minutes for an appointment slot.')
729 'calendar_appt_style' => array(
730 xl('Appointment Display Style'),
731 array(
732 '1' => 'Last name',
733 '2' => 'Last name, first name',
734 '3' => 'Last name, first name (title)',
735 '4' => 'Last name, first name (title: description)',
737 '2', // default
738 xl('This determines how appointments display on the calendar.')
741 'docs_see_entire_calendar' => array(
742 xl('Providers See Entire Calendar'),
743 'bool', // data type
744 '0', // default
745 xl('Check this if you want providers to see all appointments by default and not just their own.')
748 'auto_create_new_encounters' => array(
749 xl('Auto-Create New Encounters'),
750 'bool', // data type
751 '1', // default
752 xl('Automatically create a new encounter when appointment status is set to "@" (arrived).')
755 'event_color' => array(
756 xl('Appointment/Event Color'),
757 array(
758 '1' => 'Category Color Schema',
759 '2' => 'Facility Color Schema',
760 ), // data type
761 '1', // default
762 xl('This determines which color schema used for appointment')
767 // Security Tab
769 'Security' => array(
771 'timeout' => array(
772 xl('Idle Session Timeout Seconds'),
773 'num', // data type
774 '7200', // default
775 xl('Maximum idle time in seconds before logout. Default is 7200 (2 hours).')
778 'secure_password' => array(
779 xl('Require Strong Passwords'),
780 'bool', // data type
781 '0', // default
782 xl('Strong password means at least 8 characters, and at least three of: a number, a lowercase letter, an uppercase letter, a special character.')
785 'password_history' => array(
786 xl('Require Unique Passwords'),
787 'bool', // data type
788 '0', // default
789 xl('Means none of last three passwords are allowed when changing a password.')
792 'password_expiration_days' => array(
793 xl('Default Password Expiration Days'),
794 'num', // data type
795 '0', // default
796 xl('Default password expiration period in days. 0 means this feature is disabled.')
799 'password_grace_time' => array(
800 xl('Password Expiration Grace Period'),
801 'num', // data type
802 '0', // default
803 xl('Period in days where a user may login with an expired password.')
806 'is_client_ssl_enabled' => array(
807 xl('Enable Client SSL'),
808 'bool', // data type
809 '0', // default
810 xl('Enable client SSL certificate authentication.')
813 'certificate_authority_crt' => array(
814 xl('Path to CA Certificate File'),
815 'text', // data type
816 '', // default
817 xl('Set this to the full absolute path. For creating client SSL certificates for HTTPS.')
820 'certificate_authority_key' => array(
821 xl('Path to CA Key File'),
822 'text', // data type
823 '', // default
824 xl('Set this to the full absolute path. For creating client SSL certificates for HTTPS.')
827 'client_certificate_valid_in_days' => array(
828 xl('Client Certificate Expiration Days'),
829 'num', // data type
830 '365', // default
831 xl('Number of days that the client certificate is valid.')
834 'Emergency_Login_email_id' => array(
835 xl('Emergency Login Email Address'),
836 'text', // data type
837 '', // default
838 xl('Email address, if any, to receive emergency login user activation messages.')
843 // Notifications Tab
845 'Notifications' => array(
847 'patient_reminder_sender_name' => array(
848 xl('Patient Reminder Sender Name'),
849 'text', // data type
850 '', // default
851 xl('Name of the sender for patient reminders.')
854 'patient_reminder_sender_email' => array(
855 xl('Patient Reminder Sender Email'),
856 'text', // data type
857 '', // default
858 xl('Email address of the sender for patient reminders. Replies to patient reminders will be directed to this address. It is important to use an address from your clinic\'s domain to avoid help prevent patient reminders from going to junk mail folders.')
861 'practice_return_email_path' => array(
862 xl('Notification Email Address'),
863 'text', // data type
864 '', // default
865 xl('Email address, if any, to receive administrative notifications.')
868 'EMAIL_METHOD' => array(
869 xl('Email Transport Method'),
870 array(
871 'PHPMAIL' => 'PHPMAIL',
872 'SENDMAIL' => 'SENDMAIL',
873 'SMTP' => 'SMTP',
875 'SMTP', // default
876 xl('Method for sending outgoing email.')
879 'SMTP_HOST' => array(
880 xl('SMTP Server Hostname'),
881 'text', // data type
882 'localhost', // default
883 xl('If SMTP is used, the server`s hostname or IP address.')
886 'SMTP_PORT' => array(
887 xl('SMTP Server Port Number'),
888 'num', // data type
889 '25', // default
890 xl('If SMTP is used, the server`s TCP port number (usually 25).')
893 'SMTP_USER' => array(
894 xl('SMTP User for Authentication'),
895 'text', // data type
896 '', // default
897 xl('Must be empty if SMTP authentication is not used.')
900 'SMTP_PASS' => array(
901 xl('SMTP Password for Authentication'),
902 'text', // data type
903 '', // default
904 xl('Must be empty if SMTP authentication is not used.')
907 'EMAIL_NOTIFICATION_HOUR' => array(
908 xl('Email Notification Hours'),
909 'num', // data type
910 '50', // default
911 xl('Number of hours in advance to send email notifications.')
914 'SMS_NOTIFICATION_HOUR' => array(
915 xl('SMS Notification Hours'),
916 'num', // data type
917 '50', // default
918 xl('Number of hours in advance to send SMS notifications.')
921 'SMS_GATEWAY_USENAME' => array(
922 xl('SMS Gateway Username'),
923 'text', // data type
924 '', // default
925 xl('Username for SMS Gateway.')
928 'SMS_GATEWAY_PASSWORD' => array(
929 xl('SMS Gateway Password'),
930 'text', // data type
931 '', // default
932 xl('Password for SMS Gateway.')
935 'SMS_GATEWAY_APIKEY' => array(
936 xl('SMS Gateway API Key'),
937 'text', // data type
938 '', // default
939 xl('API key for SMS Gateway.')
942 'phone_notification_hour' => array(
943 xl('Phone Notification Hour'),
944 'num', // data type
945 '50', // default
946 xl('Number of hours in advance to send Phone notification.')
949 'phone_gateway_username' => array(
950 xl('Phone Gateway Username'),
951 'text', // data type
952 '', // default
953 xl('Username for Phone Gateway. Automated VOIP service provided by Maviq. Please visit http://signup.maviq.com for more information.')
956 'phone_gateway_password' => array(
957 xl('Phone Gateway Password'),
958 'text', // data type
959 '', // default
960 xl('Password for Phone Gateway. Automated VOIP service provided by Maviq. Please visit http://signup.maviq.com for more information.')
963 'phone_gateway_url' => array(
964 xl('Phone Gateway URL'),
965 'text', // data type
966 '', // default
967 xl('URL for Phone Gateway. Automated VOIP service provided by Maviq. Please visit http://signup.maviq.com for more information.')
972 // CDR (Clinical Decision Rules)
974 'CDR' => array(
976 'enable_cdr' => array(
977 xl('Enable Clinical Decisions Rules (CDR)'),
978 'bool', // data type
979 '1', // default
980 xl('Enable Clinical Decisions Rules (CDR)')
983 'enable_cdr_crw' => array(
984 xl('Enable Clinical Reminder Widget'),
985 'bool', // data type
986 '1', // default
987 xl('Enable Clinical Reminder Widget')
990 'enable_cdr_crp' => array(
991 xl('Enable Clinical Reminder Popup'),
992 'bool', // data type
993 '1', // default
994 xl('Enable Clinical Reminder Popup')
997 'enable_cdr_prw' => array(
998 xl('Enable Patient Reminder Widget'),
999 'bool', // data type
1000 '1', // default
1001 xl('Enable Patient Reminder Widget')
1004 'enable_cqm' => array(
1005 xl('Enable CQM Reporting'),
1006 'bool', // data type
1007 '1', // default
1008 xl('Enable Clinical Quality Measure (CQM) Reporting')
1011 'pqri_registry_name' => array(
1012 xl('PQRI Registry Name'),
1013 'text', // data type
1014 'Model Registry', // default
1015 xl('PQRI Registry Name')
1018 'pqri_registry_id' => array(
1019 xl('PQRI Registry ID'),
1020 'text', // data type
1021 '125789123', // default
1022 xl('PQRI Registry ID')
1025 'enable_amc' => array(
1026 xl('Enable AMC Reporting'),
1027 'bool', // data type
1028 '1', // default
1029 xl('Enable Automated Measure Calculations (AMC) Reporting')
1032 'enable_amc_prompting' => array(
1033 xl('Enable AMC Prompting'),
1034 'bool', // data type
1035 '1', // default
1036 xl('Enable Prompting For Automated Measure Calculations (AMC) Required Data')
1039 'enable_amc_tracking' => array(
1040 xl('Enable AMC Tracking'),
1041 'bool', // data type
1042 '1', // default
1043 xl('Enable Reporting of Tracking Date For Automated Measure Calculations (AMC)')
1046 'cdr_report_nice' => array(
1047 xl('CDR Reports Processing Priority'),
1048 array(
1049 '' => xl('Default Priority'),
1050 '5' => xl('Moderate Priority'),
1051 '10' => xl('Moderate/Low Priority'),
1052 '15' => xl('Low Priority'),
1053 '20' => xl('Lowest Priority')
1055 '', // default
1056 xl('Set processing priority for CDR engine based reports.')
1059 'pat_rem_clin_nice' => array(
1060 xl('Patient Reminder Creation Processing Priority'),
1061 array(
1062 '' => xl('Default Priority'),
1063 '5' => xl('Moderate Priority'),
1064 '10' => xl('Moderate/Low Priority'),
1065 '15' => xl('Low Priority'),
1066 '20' => xl('Lowest Priority')
1068 '', // default
1069 xl('Set processing priority for creation of Patient Reminders (in full clinic mode).')
1074 // Logging
1076 'Logging' => array(
1078 'enable_auditlog' => array(
1079 xl('Enable Audit Logging'),
1080 'bool', // data type
1081 '1', // default
1082 xl('Enable Audit Logging')
1085 'audit_events_patient-record' => array(
1086 xl('Audit Logging Patient Record'),
1087 'bool', // data type
1088 '1', // default
1089 xl('Enable logging of patient record modifications.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1092 'audit_events_scheduling' => array(
1093 xl('Audit Logging Scheduling'),
1094 'bool', // data type
1095 '1', // default
1096 xl('Enable logging of scheduling activities.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1099 'audit_events_order' => array(
1100 xl('Audit Logging Order'),
1101 'bool', // data type
1102 '1', // default
1103 xl('Enable logging of ordering activities.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1106 'audit_events_security-administration' => array(
1107 xl('Audit Logging Security Administration'),
1108 'bool', // data type
1109 '1', // default
1110 xl('Enable logging of security and administration activities.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1113 'audit_events_backup' => array(
1114 xl('Audit Logging Backups'),
1115 'bool', // data type
1116 '1', // default
1117 xl('Enable logging of backup related activities.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1120 'audit_events_other' => array(
1121 xl('Audit Logging Miscellaneous'),
1122 'bool', // data type
1123 '1', // default
1124 xl('Enable logging of miscellaneous activities.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1127 'audit_events_query' => array(
1128 xl('Audit Logging SELECT Query'),
1129 'bool', // data type
1130 '0', // default
1131 xl('Enable logging of all SQL SELECT queries.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1134 'audit_events_cdr' => array(
1135 xl('Audit CDR Engine Queries'),
1136 'bool', // data type
1137 '0', // default
1138 xl('Enable logging of CDR Engine Queries.').' ('.xl('Note that Audit Logging needs to be enabled above').')'
1141 'enable_atna_audit' => array(
1142 xl('Enable ATNA Auditing'),
1143 'bool', // data type
1144 '0', // default
1145 xl('Enable Audit Trail and Node Authentication (ATNA).')
1148 'atna_audit_host' => array(
1149 xl('ATNA audit host'),
1150 'text', // data type
1151 '', // default
1152 xl('The hostname of the ATNA audit repository machine.')
1155 'atna_audit_port' => array(
1156 xl('ATNA audit port'),
1157 'text', // data type
1158 '6514', // default
1159 xl('Listening port of the RFC 5425 TLS syslog server.')
1162 'atna_audit_localcert' => array(
1163 xl('ATNA audit local certificate'),
1164 'text', // data type
1165 '', // default
1166 xl('Certificate to send to RFC 5425 TLS syslog server.')
1169 'atna_audit_cacert' => array(
1170 xl('ATNA audit CA certificate'),
1171 'text', // data type
1172 '', // default
1173 xl('CA Certificate for verifying the RFC 5425 TLS syslog server.')
1178 // Miscellaneous Tab
1180 'Miscellaneous' => array(
1182 'mysql_bin_dir' => array(
1183 xl('Path to MySQL Binaries'),
1184 'text', // data type
1185 $mysql_bin_dir, // default
1186 xl('Full path to directory containing MySQL executables.')
1189 'perl_bin_dir' => array(
1190 xl('Path to Perl Binaries'),
1191 'text', // data type
1192 $perl_bin_dir, // default
1193 xl('Full path to directory containing Perl executables.')
1196 'temporary_files_dir' => array(
1197 xl('Path to Temporary Files'),
1198 'text', // data type
1199 $temporary_files_dir, // default
1200 xl('Full path to directory used for temporary files.')
1203 'backup_log_dir' => array(
1204 xl('Path for Event Log Backup'),
1205 'text', // data type
1206 $backup_log_dir, // default
1207 xl('Full path to directory for event log backup.')
1210 'state_data_type' => array(
1211 xl('State Data Type'),
1212 array(
1213 '2' => xl('Text field'),
1214 '1' => xl('Single-selection list'),
1215 '26' => xl('Single-selection list with ability to add to the list'),
1217 '26', // default
1218 xl('Field type to use for employer or subscriber state in demographics.')
1221 'state_list' => array(
1222 xl('State list'),
1223 'text', // data type
1224 'state', // default
1225 xl('List used by above State Data Type option.')
1228 'state_custom_addlist_widget' => array(
1229 xl('State List Widget Custom Fields'),
1230 'bool', // data type
1231 '1', // default
1232 xl('Show the custom state form for the add list widget (will ask for title and abbreviation).')
1235 'country_data_type' => array(
1236 xl('Country Data Type'),
1237 array(
1238 '2' => xl('Text field'),
1239 '1' => xl('Single-selection list'),
1240 '26' => xl('Single-selection list with ability to add to the list'),
1242 '26', // default
1243 xl('Field type to use for employer or subscriber country in demographics.')
1246 'country_list' => array(
1247 xl('Country list'),
1248 'text', // data type
1249 'country', // default
1250 xl('List used by above Country Data Type option.')
1253 'print_command' => array(
1254 xl('Print Command'),
1255 'text', // data type
1256 'lpr -P HPLaserjet6P -o cpi=10 -o lpi=6 -o page-left=72 -o page-top=72',
1257 xl('Shell command for printing from the server.')
1260 'default_chief_complaint' => array(
1261 xl('Default Reason for Visit'),
1262 'text', // data type
1264 xl('You may put text here as the default complaint in the New Patient Encounter form.')
1267 'default_new_encounter_form' => array(
1268 xl('Default Encounter Form ID'),
1269 'text', // data type
1271 xl('To automatically open the specified form. Some sports teams use football_injury_audit here.')
1274 'patient_id_category_name' => array(
1275 xl('Patient ID Category Name'),
1276 'text', // data type
1277 'Patient ID card', // default
1278 xl('Optional category name for an ID Card image that can be viewed from the patient summary page.')
1281 'patient_photo_category_name' => array(
1282 xl('Patient Photo Category Name'),
1283 'text', // data type
1284 'Patient Photograph', // default
1285 xl('Optional category name for photo images that can be viewed from the patient summary page.')
1288 'MedicareReferrerIsRenderer' => array(
1289 xl('Medicare Referrer Is Renderer'),
1290 'bool', // data type
1291 '0', // default = true
1292 xl('For Medicare only, forces the referring provider to be the same as the rendering provider.')
1295 'post_to_date_benchmark' => array(
1296 xl('Financial Close Date (yyyy-mm-dd)'),
1297 'text', // data type
1298 date('Y-m-d',time() - (10 * 24 * 60 * 60)), // default
1299 xl('The payments posted cannot go below this date.This ensures that after taking the final report nobody post for previous dates.')
1302 'enable_hylafax' => array(
1303 xl('Enable Hylafax Support'),
1304 'bool', // data type
1305 '0', // default
1306 xl('Enable Hylafax Support')
1309 'hylafax_server' => array(
1310 xl('Hylafax Server'),
1311 'text', // data type
1312 'localhost', // default
1313 xl('Hylafax server hostname.')
1316 'hylafax_basedir' => array(
1317 xl('Hylafax Directory'),
1318 'text', // data type
1319 '/var/spool/fax', // default
1320 xl('Location where Hylafax stores faxes.')
1323 'hylafax_enscript' => array(
1324 xl('Hylafax Enscript Command'),
1325 'text', // data type
1326 'enscript -M Letter -B -e^ --margins=36:36:36:36', // default
1327 xl('Enscript command used by Hylafax.')
1330 'enable_scanner' => array(
1331 xl('Enable Scanner Support'),
1332 'bool', // data type
1333 '0', // default
1334 xl('Enable Scanner Support')
1337 'scanner_output_directory' => array(
1338 xl('Scanner Directory'),
1339 'text', // data type
1340 '/mnt/scan_docs', // default
1341 xl('Location where scans are stored.')
1346 // Portal Tab
1348 'Portal' => array(
1350 'portal_onsite_enable' => array(
1351 xl('Enable Onsite Patient Portal'),
1352 'bool', // data type
1353 '0',
1354 xl('Enable Onsite Patient Portal.')
1357 'portal_onsite_address' => array(
1358 xl('Onsite Patient Portal Site Address'),
1359 'text', // data type
1360 'https://your_web_site.com/openemr/patients',
1361 xl('Website link for the Onsite Patient Portal.')
1364 'portal_offsite_enable' => array(
1365 xl('Enable Offsite Patient Portal'),
1366 'bool', // data type
1367 '0',
1368 xl('Enable Offsite Patient Portal.')
1371 'portal_offsite_providerid' => array(
1372 xl('Offsite Patient Portal Provider ID'),
1373 'text', // data type
1375 xl('Offsite Patient Portal Provider ID(Put Blank If not Registered).')
1378 'portal_offsite_username' => array(
1379 xl('Offsite Patient Portal Username'),
1380 'text', // data type
1382 xl('Offsite Patient Portal Username(Put Blank If not Registered).')
1385 'portal_offsite_password' => array(
1386 xl('Offsite Patient Portal Password'),
1387 'pwd', // data type
1389 xl('Offsite Patient Portal Password(Put Blank If not Registered).')
1392 'portal_offsite_address' => array(
1393 xl('Offsite Patient Portal Site Address'),
1394 'text', // data type
1395 'https://mydocsportal.com/provider.php',
1396 xl('Offsite Https link for the Patient Portal.')
1398 'portal_offsite_address_patient_link' => array(
1399 xl('Offsite Patient Portal Site Address (Patient Link)'),
1400 'text', // data type
1401 'https://mydocsportal.com',
1402 xl('Offsite Https link for the Patient Portal.(Patient Link)')
1407 // Connectors Tab
1409 'Connectors' => array(
1411 'lab_exchange_enable' => array(
1412 xl('Enable Lab Exchange'),
1413 'bool', // data type
1414 '0',
1415 xl('Enable the OpenEMR Support LLC Lab Exchange Service.')
1418 'lab_exchange_siteid' => array(
1419 xl('Lab Exchange Site ID'),
1420 'text', // data type
1421 '3',
1422 xl('Site ID for the OpenEMR Support LLC Lab Exchange Service.')
1425 'lab_exchange_token' => array(
1426 xl('Lab Exchange Token ID'),
1427 'text', // data type
1428 '12345',
1429 xl('Token ID for the OpenEMR Support LLC Lab Exchange Service.')
1432 'lab_exchange_endpoint' => array(
1433 xl('Lab Exchange Site Address'),
1434 'text', // data type
1435 'https://openemrsupport.com:29443/len/api',
1436 xl('Https link for the OpenEMR Support LLC Lab Exchange Service.')
1439 'erx_enable' => array(
1440 xl('Enable NewCrop eRx Service'),
1441 'bool', // data type
1442 '0',
1443 xl('Enable ZMG, LLC eRx service')
1446 'erx_path_production' => array(
1447 xl('NewCrop eRx Site Address'),
1448 'text', // data type
1449 'https://secure.newcropaccounts.com/InterfaceV7/RxEntry.aspx',
1450 xl('Contact ZMG, LLC (zmghealth@gmail.com) for subscribing the eRx service')
1453 'erx_path_soap_production' => array(
1454 xl('NewCrop eRx Web Service Address'),
1455 'text', // data type
1456 'https://secure.newcropaccounts.com/v7/WebServices/Update1.asmx?WSDL;https://secure.newcropaccounts.com/v7/WebServices/Patient.asmx?WSDL',
1457 xl('Contact ZMG, LLC (zmghealth@gmail.com) for subscribing the eRx service')
1460 'partner_name_production' => array(
1461 xl('NewCrop eRx Partner Name'),
1462 'text', // data type
1464 xl('Contact ZMG, LLC (zmghealth@gmail.com) for subscribing the eRx service')
1467 'erx_name_production' => array(
1468 xl('NewCrop eRx Name'),
1469 'text', // data type
1471 xl('Contact ZMG, LLC (zmghealth@gmail.com) for subscribing the eRx service')
1474 'erx_password_production' => array(
1475 xl('NewCrop eRx Password'),
1476 'pass', // data type
1478 xl('Contact ZMG, LLC (zmghealth@gmail.com) for subscribing the eRx service')
1481 'erx_upload_active' => array(
1482 xl('Only upload active prescriptions'),
1483 'bool', // data type
1484 '0',
1485 xl('Only upload active prescriptions')
1488 'erx_import_status_message' => array(
1489 xl('Enable import status message for NewCrop erx'),
1490 'bool', // data type
1491 '0',
1492 xl('Enable import status message for NewCrop erx')
1495 'erx_medication_display' => array(
1496 xl('Do not display Medications uploaded to NewCrop'),
1497 'bool', // data type
1498 '0',
1499 xl('Do not display Medications uploaded to NewCrop')
1502 'erx_allergy_display' => array(
1503 xl('Do not display Allergy uploaded to NewCrop'),
1504 'bool', // data type
1505 '0',
1506 xl('Do not display Allergy uploaded to NewCrop')
1509 'erx_default_patient_country' => array(
1510 xl('Default Patient Country'),
1511 array(
1512 '' => '',
1513 'US' => 'USA',
1514 'CA' => 'Canada',
1515 'MX' => 'Mexico'
1518 xl('Default Patient Country'),
1521 'phimail_enable' => array(
1522 xl('Enable phiMail Direct Messaging Service'),
1523 'bool', // data type
1524 '0',
1525 xl('Enable phiMail Direct Messaging Service')
1528 'phimail_server_address' => array(
1529 xl('phiMail Server Address'),
1530 'text', // data type
1531 'https://phimail.example.com:32541',
1532 xl('Contact EMR Direct to subscribe to the phiMail Direct messaging service')
1535 'phimail_username' => array(
1536 xl('phiMail Username'),
1537 'text', // data type
1539 xl('Contact EMR Direct to subscribe to the phiMail Direct messaging service')
1542 'phimail_password' => array(
1543 xl('phiMail Password'),
1544 'pass', // data type
1546 xl('Contact EMR Direct to subscribe to the phiMail Direct messaging service')
1549 'phimail_notify' => array(
1550 xl('phiMail notification user'),
1551 'text', // data type
1552 'admin',
1553 xl('This user will receive notification of new incoming Direct messages')
1556 'phimail_interval' => array(
1557 xl('phiMail Message Check Interval (minutes)'),
1558 'num', // data type
1559 '5',
1560 xl('Interval between message checks (set to zero for manual checks only)')
1565 'Rx' => array(
1566 'rx_enable_DEA' => array(
1567 xl('Rx Enable DEA #'),
1568 'bool', // data type
1569 '1',
1570 xl('Rx Enable DEA #')
1572 'rx_show_DEA' => array(
1573 xl('Rx Show DEA #'),
1574 'bool', // data type
1575 '0',
1576 xl('Rx Show DEA #')
1578 'rx_enable_NPI' => array(
1579 xl('Rx Enable NPI'),
1580 'bool', // data type
1581 '0',
1582 xl('Rx Enable NPI')
1584 'rx_show_NPI' => array(
1585 xl('Rx Show NPI'),
1586 'bool', // data type
1587 '0',
1588 xl('Rx Show NPI')
1590 'rx_enable_SLN' => array(
1591 xl('Rx Enable State Lic. #'),
1592 'bool', // data type
1593 '0',
1594 xl('Rx Enable State Lic. #')
1596 'rx_show_SLN' => array(
1597 xl('Rx Show State Lic. #'),
1598 'bool', // data type
1599 '0',
1600 xl('Rx Show State Lic. #')
1602 'rx_paper_size' => array(
1603 xl('Rx Paper Size'), // descriptive name
1604 array(
1605 'LETTER' => xl('Letter Paper Size'),
1606 'LEGAL' => xl('Legal Paper Size'),
1607 'FOLIO' => xl('Folio Paper Size'),
1608 'EXECUTIVE' => xl('Executive Paper Size'),
1609 '4A0' => ('4A0' . " " . xl('Paper Size')),
1610 '2A0' => ('2A0' . " " . xl('Paper Size')),
1611 'A0' => ('A0' . " " . xl('Paper Size')),
1612 'A1' => ('A1' . " " . xl('Paper Size')),
1613 'A2' => ('A2' . " " . xl('Paper Size')),
1614 'A3' => ('A3' . " " . xl('Paper Size')),
1615 'A4' => ('A4' . " " . xl('Paper Size')),
1616 'A5' => ('A5' . " " . xl('Paper Size')),
1617 'A6' => ('A6' . " " . xl('Paper Size')),
1618 'A7' => ('A7' . " " . xl('Paper Size')),
1619 'A8' => ('A8' . " " . xl('Paper Size')),
1620 'A9' => ('A9' . " " . xl('Paper Size')),
1621 'A10' => ('A10' . " " . xl('Paper Size')),
1622 'B0' => ('B0' . " " . xl('Paper Size')),
1623 'B1' => ('B1' . " " . xl('Paper Size')),
1624 'B2' => ('B2' . " " . xl('Paper Size')),
1625 'B3' => ('B3' . " " . xl('Paper Size')),
1626 'B4' => ('B4' . " " . xl('Paper Size')),
1627 'B5' => ('B5' . " " . xl('Paper Size')),
1628 'B6' => ('B6' . " " . xl('Paper Size')),
1629 'B7' => ('B7' . " " . xl('Paper Size')),
1630 'B8' => ('B8' . " " . xl('Paper Size')),
1631 'B9' => ('B9' . " " . xl('Paper Size')),
1632 'B10' => ('B10' . " " . xl('Paper Size')),
1633 'C0' => ('C0' . " " . xl('Paper Size')),
1634 'C1' => ('C1' . " " . xl('Paper Size')),
1635 'C2' => ('C2' . " " . xl('Paper Size')),
1636 'C3' => ('C3' . " " . xl('Paper Size')),
1637 'C4' => ('C4' . " " . xl('Paper Size')),
1638 'C5' => ('C5' . " " . xl('Paper Size')),
1639 'C6' => ('C6' . " " . xl('Paper Size')),
1640 'C7' => ('C7' . " " . xl('Paper Size')),
1641 'C8' => ('C8' . " " . xl('Paper Size')),
1642 'C9' => ('C9' . " " . xl('Paper Size')),
1643 'C10' => ('C10' . " " . xl('Paper Size')),
1644 'RA0' => ('RA0' . " " . xl('Paper Size')),
1645 'RA1' => ('RA1' . " " . xl('Paper Size')),
1646 'RA2' => ('RA2' . " " . xl('Paper Size')),
1647 'RA3' => ('RA3' . " " . xl('Paper Size')),
1648 'RA4' => ('RA4' . " " . xl('Paper Size')),
1649 'SRA0' => ('SRA0' . " " . xl('Paper Size')),
1650 'SRA1' => ('SRA1' . " " . xl('Paper Size')),
1651 'SRA2' => ('SRA2' . " " . xl('Paper Size')),
1652 'SRA3' => ('SRA3' . " " . xl('Paper Size')),
1653 'SRA4' => ('SRA4' . " " . xl('Paper Size')),
1655 'LETTER', // default = tree menu
1656 xl('Rx Paper Size')
1658 'rx_left_margin' => array(
1659 xl('Rx Left Margin (px)'),
1660 'num',
1661 '30',
1662 xl('Rx Left Margin (px)')
1664 'rx_right_margin' => array(
1665 xl('Rx Right Margin (px)'),
1666 'num',
1667 '30',
1668 xl('Rx Right Margin (px)')
1670 'rx_top_margin' => array(
1671 xl('Rx Top Margin (px)'),
1672 'num',
1673 '72',
1674 xl('Rx Top Margin (px)')
1676 'rx_bottom_margin' => array(
1677 xl('Rx Bottom Margin (px)'),
1678 'num',
1679 '30',
1680 xl('Rx Bottom Margin (px)')